Java

java.util.Arrays에 대하여

nan2 2022. 1. 20. 14:24
반응형

 

Arrays 클래스란?

배열을 다루기 편리하도록 static 메서드를 제공하는 클래스

(static 메서드이기 때문에 'Arrays.메서드()' 와 같이 사용 가능함)

 

 

 

Arrays 클래스 메서드?

- asList() : 배열을 List로 변환하는 메서드

String[] arr = {"a", "b", "c"};
List<String> list = Arrays.asList(arr);

* asList() 로 만들어진 List에는 원소 추가(add) 불가능하며, 원소의 값 변경 시 원본 배열의 값도 함께 바뀌게 됨

 

 

 

- copyOf(), copyOfRange() : 배열을 복사하는 메서드

Arrays.copyOf([] '원본배열', int 새 배열의 길이);

Arrays.copyOfRange([] '원본배열', int from(시작 index), int to(끝 index));

* 원본 배열보다 큰 길이의 배열에 복사하는 경우 빈 요소에는 int 배열인 경우 0, String 배열인 경우 null로 채워짐

 

 

 

- fill() : 배열 채우는 메서드

String[] arr = new int[4];

// 대상배열, 채울값
Arrays.fill(arr, "a");

// 결과
String[] arr = {"a", "a", "a", "a"};

 

 

 

- sort() : 배열을 정렬하는 메서드

// 오름차순 정렬
int[] arr = {5, 3, 2, 4, 1};
Arrays.sort(arr);

//결과
int[] arr = {1, 2, 3, 4, 5};

// 내림차순 정렬
Arrays.sort(arr, Collections.reverseOrder());
Arrays.sort(arr, Comparator.reverseOrder());

//결과
int[] arr = {5, 4, 3, 2, 1};

 

 

 

- binarySearch() : 배열을 검색하는 메서드

int[] arr = {5, 3, 2, 4, 1};
Arrays.sort(arr);

int idx = Arrays.binarySearch(arr, 4);

* binarySearch() 메서드를 사용하기 전에 배열을 sort()한 후 사용해야 함

반응형