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()한 후 사용해야 함
반응형