Comparable 인터페이스
String, Integer 처럼 비교가 가능한 객체가 구현하는 인터페이스.
compareTo(Object obj) 메소드를 구현해 객체 자신과 파라미터로 들어온 변수를 비교해 결과값을 정수로 반환한다.
기본 정렬 기준을 제공한다.
Comparator 인터페이스
기본 정렬 기준과 다른 정렬 기준을 적용하고 싶을 때 비교를 위한 객체를 만들고 Comparator 인터페이스를 구현하게끔 한다.
compare(Object o1, Object o2) 메소드를 구현해 파라미터로 들어온 변수들을 비교해 결과값을 정수로 반환한다.
예시
String[] strArr = { ... }
Arrays.sort(strArr); # String 클래스의 compareTo 메소드로 정렬
Arrays.sort(strArr, new Descending()); # Descending 클래스의 compare 메소드로 정렬
class Decending implements Compartor{
public int compare(String s1, String s2){
...
}
}
참고
잘은 모르겠지만 Comparator는 서로 다른 클래스도 비교가 가능한듯.
'프로그래밍 언어 > Java' 카테고리의 다른 글
인텔리제이 단축키 (0) | 2022.05.31 |
---|---|
제네릭 (0) | 2022.04.14 |
음수 정수의 비트 표현 (0) | 2022.04.13 |
Iterable & Iterator (0) | 2022.04.11 |
모듈과 패키지 (0) | 2022.04.10 |