객체를 정렬하기 위해 어떤 기준을 정리하여 사용하고 싶을때
Comparator를 사용한다.
예시)
Arrays.sort(str, new Comparator<String>() {
@Override
public int compare(String a, String b) {
return (b+a).compareTo(a+b);
//오름차순 정렬 (o1+o2).compareTo(o1+o2);
}
});
Comparator 클래스 안의 메소드 compare의 리턴 값이
음수일 때, 오름차순 정렬
양수일 때, 내림차순 정렬
실제로 compare메소드는 리턴 값에 따라 a와 b를 교환여부를 결정함
음수일 때, 교환
양수일 때, 그대로
compareTo 메소드는 정수형, 문자열을 비교한 값을 리턴한다.
(정수 or 문자열).compare(정수 or 문자열)
여기서 문자열의 경우 아스키코드 값을 차를 리턴해 준다.
https://cchoimin.tistory.com/entry/%EA%B0%9D%EC%B2%B4-%EC%A0%95%EB%A0%AC-Comparator
[JAVA] 객체 정렬 Comparator
* Comparator => 기본정렬기준 외에 다른 여러 기준으로 정렬하고자 할때 사용하는 클래스 단순 리스트를 정렬할때 보통 Collections.sort()를 사용한다 //오름차순 ArrayList list = new ArrayList (); list.add(..
cchoimin.tistory.com
https://mine-it-record.tistory.com/133
[JAVA] 자바_compareTo ( 값 [문자열/숫자] 비교 )
- 자바 compareTo - -마지막 수정날짜 : 2021-01-01- 과거 기록한 글이나 보기 힘든 부분도 있고 잘못 작성된 부분이 있어 내용 일부분 수정하였습니다. (잘못된 내용이 있는부분 적어주시면 바로바로
mine-it-record.tistory.com
'백엔드 > JAVA' 카테고리의 다른 글
생성자, 상속, 접근자 (0) | 2022.04.22 |
---|---|
replaceAll, 문자열 정규식 (0) | 2022.04.19 |
람다식 (0) | 2022.03.15 |
URL Connection, Http Url Connection (0) | 2022.03.08 |
ConcurrentHashMap (0) | 2022.02.23 |
댓글