본문 바로가기

dev/자바

Arrays Collections sort

자바 Arrays와 Collections에 sort라는 api가 있습니다.
 
Arrays의 sort는 배열을 정렬하고
 
Collections의 sort는 Collection을 정렬합니다.
(Collection - List, Map, Set)
 
먼저 Arrays의 sort 예시부터 보겠습니다.
 

Arrays sort 예제

 
위 화면의 빨간색 상자로 표시한 부분이 String 배열을 오름차순으로 정렬하고 있습니다.
 
11번째 라인 "return o1.compareTo(o2);"은 o1과 o2을 비교해서 오름차순으로 정렬한다는 뜻입니다.
 

Arrays sort 예제

 
반대로 내림차순으로 정렬하려면 "return o2.compareTo(o1);"으로 수정하면 됩니다.
 
위의 compare 메소드 리턴값에 대해 아래와 같이 정리할 수 있습니다.
--------------------------------------------------------------------------------------------------------------------

오름차순 기준

 

음수: o1이 o2보다 앞에 정렬(o1이 o2보다 작은 경우)
0: o1과 o2이 같은 위치(o1이 o2와 같은 경우)
양수: o1이 o2보다 뒤에 정렬(o1이 o2보다 큰 경우)
--------------------------------------------------------------------------------------------------------------------
 
Collections sort는 말 그대로 자바 Collections(List, Map, Set)를 정렬합니다.
 

Collections sort 예제

 
위 화면의 빨간색 상자로 표시한 부분이 List를 오름차순으로 정렬하고 있습니다.
 
Arrays에서 Collections로 바뀐 것만 빼고 동일하게 동작한다는 것을 알 수 있습니다.

'dev > 자바' 카테고리의 다른 글

Java Collection forEach  (0) 2022.10.26
Try-With-Resource  (0) 2022.02.10
List remove ConcurrentModificationException  (0) 2021.09.07
Java NumberFormat DecimalFormat  (0) 2021.07.06
String split 특수문자  (0) 2021.06.18