# Java Arrays.sort() 반환값은 void --- ## 1. 개요 - `Arrays.sort()`는 Java에서 배열을 정렬할 때 사용하는 정적 메서드이다. - 이 메서드는 배열을 ****제자리(in-place)**** 에서 정렬하며, ****반환값이 없다 = (**`void`**를 반환한다.)**** - 따라서 반환값이 없는 메서드를 `arr = Arrays.sort(arr);`처럼 작성하면 `void``int[]`에 할당하려는 시도가 되어 ****타입 불일치 오류****(`incompatible types`)가 발생한다. - 오류 메세지 : ****incompatible types: void cannot be converted to int\[\]**** --- ## 2. 기본 문법 ```java Arrays.sort(배열); ```
매개변수 설명
배열 정렬 대상 (예: `int[]`, `char[]`, `String[]`)
--- ## 3. 반환값이 `void`인 이유
항목 설명
제자리 정렬 `Arrays.sort()`****원본 배열 자체****를 수정함
새로운 배열 반환 안 함 정렬된 배열을 새로 만들어 반환하지 않음
메모리 절약 불필요한 배열 복사 없이 빠른 정렬 수행 가능
할당 X `int[] sorted = Arrays.sort(arr);` ❌ 오류 발생
--- ## 4. 정렬된 배열을 새로 만들고 싶다면? 아래와 같이 Arrays.copyOf(원본배열, 원본배열의 길이)를 통해 배열을 복사한 후, 정렬을 수행한다. ```java int[] original = {3, 1, 2}; int[] copy = Arrays.copyOf(original, original.length); Arrays.sort(copy); ``` --- ## 5. 관련 메서드
메서드 설명
`Arrays.sort(arr)` 기본 오름차순 정렬
`Arrays.sort(arr, Comparator)` 사용자 정의 기준 정렬 (객체 배열)
`Collections.sort(list)` 리스트 정렬 (반환값 없음)
---