반응형
배열을 다루기 위한 메서드의 모음으로 Arrays 클래스의 모든 메서드는 static method이므로, 객체를 생성하지 않고 바로 사용할 수 있다. 단!! import문으로 java.util 패키지를 호출한 뒤에 사용해야 한다.
앞에 Arrays. 메서드명()을 붙여 사용한다.
- binarySearch() : 전달받은 배열에서 특정 객체의 위치를 이진 검색 알고리즘으로 검색하여, 위치를 반환
단!! 이진 검색 알고리즘이므로, 배열이 sort() 메서드 등을 사용하여 미리 정리되어 있어야 한다. - copyOf() : 전달받은 배열의 특정 길이만큼 새로운 배열로 복사하여 반환한다.
- copyOfRange() : 특정범위의 해당하는 요소를 새로운 배열로 복사.
- fill() : 전달받은 배열의 모든 요소를 특정값으로 초기화
- sort() : 전달받은 배열의 모든 요소를 오름차순으로 정렬
< 대표적인 메소드 >
Arrays.asList(arr) | 전달받은 배열을 고정 크기의 리스트(list)로 변환하여 반환함. |
static int binarySearch(Object[] a, Object key) | 전달받은 배열에서 특정 객체를 이진 검색 알고리즘을 사용하여 검색한 후, 그 위치를 반환함. |
static <T> T[] copyOf(T[] original, int newLength) | 전달받은 배열을 특정 길이의 새로운 배열로 복사하여 반환함. |
static <T> T[] copyOfRange(T[] original, int from, int to) | 전달받은 배열의 특정 범위에 해당하는 요소만을 새로운 배열로 복사하여 반환함. |
static boolean equals(Object[] a, Object[] a2) | 전달받은 두 배열이 같은지를 확인함. |
static void fill(Object[] a, Object val) | 전달받은 배열의 모든 요소를 특정 값으로 초기화함. |
static void sort(Object[] a) | 전달받은 배열의 모든 요소를 오름차순으로 정렬함. |
< Caution >
정적 클래스의 ArrayList를 리턴하려면
List<String> list = Arrays.asList(arr);
원소를 추가,삭제 할 수 없고 정적이기때문에 크기변환도 불가능
동적으로 크기가 늘어나는 새로운 배열 객체를 만들고 싶다면 아래처럼 해야한다.
List<Character> list = new ArrayList<>(Arrays.asList(arr));
원소를 추가 삭제 또는 arrayList 처럼 사용가능
반응형
'IT 정보 > Java' 카테고리의 다른 글
[Java] 스트림 (Stream) 최종 연산 (terminal operation) (22) | 2022.05.28 |
---|---|
[Java] 스트림 (Stream) 중간 연산 (intermediate operation) (8) | 2022.05.27 |
[Java] Object Class 함수 모음 (4) | 2022.05.27 |
[Java] String Class 함수 모음 (22) | 2022.05.27 |
[Java] StringBuilder (StringBuffer) 클래스 사용법 (15) | 2022.05.26 |