1차원 배열 정렬 방법
- 오름차순으로 정렬이 된다.
import java.util.Arrays;
Arrays.sort(arr);
2차원 배열 정렬 방법
2차원 배열을 정렬하기 위해서는 Comparator를 Override하여 정렬 기준을 제시하면 된다.
- 예를 들어, arr이 { {2, 6}, {1, 5}, {1, 3} } 일 때 밑의 코드를 사용하면, { {1, 5}, {1, 3}, {2, 6} }이 된다
- o1[0]은 각 부분 배열의 0번째 element를 가리키며 그것들을 기준으로 compare한다는 소리이다.
- 비교 기준이 같으면 입력의 순서대로 저장된다.
- 오름차순으로 정렬이 된다.
Arrays.sort(arr, Comparator.comparingInt(o1 -> o1[0]));
- 위의 배열에서 두 번째 요소도 고려하여 정렬을 하고 싶으면 밑의 코드를 사용하면 된다.
- 위의 배열을 밑의 방법으로 정렬하면 { {1, 3}, {1, 5}, {2, 6} }이 된다.
- 0번째 element가 같으면 1번째 element로 compare하고, 같지 않으면 0번째 element로 compare한다는 소리이다.
- 오름차순으로 정렬이 된다.
Arrays.sort(arr, (o1, o2) -> {
if(o1[0] == o2[0]){
return Integer.compare(o1[1], o2[1]);
} else {
return Integer.compare(o1[0], o2[0]);
}
});
'Language > Java' 카테고리의 다른 글
[Java] HashMap 메소드 및 사용법 (0) | 2021.01.09 |
---|---|
[Java] int[] 배열을 Integer[] 배열로, Integer[] 배열을 int[] 배열로 (0) | 2020.12.20 |
[Java] TreeSet<E> (0) | 2020.12.12 |
[Java] HashSet<E>, LinkedHashSet<E> (0) | 2020.12.12 |
[Java] Set<E> (0) | 2020.11.11 |