Arrays.sort() 메서드는 크게 두 가지 형태로 사용되는데, 전체 배열을 정렬하는 경우와 배열의 특정 부분만 정렬하는 경우로 나눌 수 있습니다.
Arrays.sort()를 사용하면 원본 배열이 바뀝니다.1-1-1. 오름차순 (기본 타입)
import java.util.Arrays;
int[] a = {5, 2, 9, 1, 3};
Arrays.sort(a);
System.out.println(Arrays.toString(a)); // 결과: [1, 2, 3, 5, 9]
1-1-2. 내림차순
import java.util.Arrays;
import java.util.Comparator;
Integer[] b = {5, 2, 9, 1, 3};
Arrays.sort(b, Comparator.reverseOrder());
System.out.println(Arrays.toString(b)); // 결과: [9, 5, 3, 2, 1]
(1) 전체 배열 정렬: Arrays.sort(arr)
import java.util.Arrays;
public class SortExample {
public static void main(String[] args) {
int[] numbers = {5, 2, 8, 1, 9};
// Arrays.sort()를 사용하여 배열 전체 정렬
Arrays.sort(numbers);
System.out.println("정렬된 배열: " + Arrays.toString(numbers));
}
}
정렬된 배열: [1, 2, 5, 8, 9]
import java.util.Arrays;
import java.util.Comparator;
public class Ex5 {
public static void main(String[] args) {
Integer[] x = {3, 1, 2};
Arrays.sort(x, Comparator.reverseOrder()); // 내림차순
System.out.println(Arrays.toString(x)); // [3, 2, 1]
}
}
(2) 특정 부분 배열 정렬: Arrays.sort(arr, fromIndex, toIndex)
배열 arr의 fromIndex 부터 toIndex 직전까지의 요소들만 정렬합니다. 즉, fromIndex 이상 ~ toIndex 미만
import java.util.Arrays;
public class SortPartialExample {
public static void main(String[] args) {
int[] numbers = {5, 2, 8, 1, 9, 3, 7};
// 인덱스 2부터 5까지 (8, 1, 9) 부분만 정렬
// (toIndex는 포함하지 않으므로 인덱스 2, 3, 4만 정렬됨)
Arrays.sort(numbers, 2, 5);
System.out.println("부분 정렬된 배열: " + Arrays.toString(numbers));
}
}
부분 정렬된 배열: [5, 2, 1, 8, 9, 3, 7]