728x90
Comparable과 Comparator는 인터페이스(interface)로 사용하기 위해서는 인터페이스 내에 선언된 메소드를 '구현'해야 사용할 수 있습니다.
Comparable
1. compareTo(T o) 메소드를 재정의(Override)해야 사용할 수 있다.
2. 자기 자신과 매개변수 객체를 비교 (자기 자신과 파라미터로 들어오는 객체 비교)
3. 크기가 작다면 음수, 동일하다면 0, 클 경우 양수 리턴.
4. 오름차순 정렬을 할 때 주로 사용
Comparator
1. 실직적으로 구현해야하는 것은 compare(T o1, T o2)이다.
2. 두 매개변수 객체를 비교 (자신이 아닌 파라미터로 들어오는 두 객체 비교)
3. 내림차순이나 특별한 기준에 따라 비교할 때 주로 사용
해당 인터페이스를 사용하는 이유
1. 객체를 정렬하기 위함
2. 객체를 비교할 수 있도록 만든다.
공통점
1. 비교한다는 것
차이점
1. 비교대상이 다르다.
기본 자료형이 아닌 새로운 클래스 객체를 만들어 비교할 때,
사용자가 어떤 우선순위를 두고 비교할지 정렬 기준을 새롭게 정해주어야 한다.
참고 블로그
반응형
'Basic > 코딩테스트' 카테고리의 다른 글
[실버5] 백준 1094번 자바(JAVA) - 막대기 (0) | 2022.05.15 |
---|---|
[자바 / Java] 백준 알고리즘 기본 설정 (컴파일 에러) (0) | 2022.05.13 |
[브론즈3] 백준 10817번 자바(JAVA) - 세 수 (0) | 2022.05.10 |
[브론즈3] 백준 2440번 자바(JAVA) - 별 찍기 - 3 (0) | 2022.05.10 |
[브론즈2] 백준 1152번 자바(JAVA) - 단어의 개수 (0) | 2022.04.26 |