Arrays 클래스는 배열을 다루는데 유용한 메서드가 정의되어있다. 같은 기능의 메서드가 매개변수만 다르게 오버로딩 되어 있기 때문에 '자바의 정석'을 보며 간단하게 함수의 기능을 정리해 보았다.
배열의 복사
- copyOf() : 배열 전체 복사해서 새로운 배열 만들어 리턴한다.
- copyOfRange() : 배열의 일부 복사해서 새로운 배열 만들어 리턴한다.
배열 채우기
- fill() : 배열의 모든 요소를 지정된 값으로 채운다.
- setAll() : 배열을 채우는데 사용할 함수형 인터페이스를 매개변수로 받는다. 메서드 호출 시 함수형 인터페이스를 구현한 객체를 매개변수로 지정하던가 아니면 람다식을 지정한다.
배열의 정렬과 검색
- sort() : 배열을 기본인 오름차순으로 정렬한다.
- binarySearch() : 배열에서 지정된 값이 저장된 위치를 찾아서 반환한다. 반드시 배열이 정렬이 된 상태여야 한다. 중복 값이 존재한다면 어느 위치가 리턴될지 알 수 없다.
문자열의 비교와 출력
- toString() : 배열의 모든 요소를 문자열로 만들어준다. 일차원 배열만 사용 가능하다.
- deepToString() : 배열의 모든 요소를 재귀적으로 접근해서 문자열을 구성하므로 다차원 배열도 문자열로 만들어준다.
- equals() : 두 배열에 저장된 모든 요소를 비교해서 같으면 true, 다르면 false를 리턴한다. 일차원 배열에만 사용할 수 있다.
- deepToEquals() : 다차원 배열에서 모든 요소를 비교해서 같으면 true, 다르면 false를 리턴해준다.
배열을 List로 변환
- asList() : 배열을 List에 담아서 리턴한다. 타입이 가변 인수라서 배열 생성 없이 저장할 요소들만 나열하는 것도 가능하다.
기타
- parallelXXX() : 보다 빠른 결과를 얻기 위해 여러 쓰레드가 작업을 나누어 처리한다.
- spliterator() : 여러 쓰레드가 처리할 수 있게 하나의 작업을 여러 작업으로 나누는 Spliterator를 반환한다.
- stream() : 컬렉션을 스트림으로 변환한다.
자바의 정석(남궁성)을 보며 정리한 내용입니다.
'Java' 카테고리의 다른 글
[Java] 람다식(Lambda expression) - 생성 규칙 / 메서드 참조 (0) | 2022.09.15 |
---|---|
[Java] Comparator와 Comparable (0) | 2022.09.14 |
[Java] Iterator, ListIterator,Enumeration 인터페이스와 해당 메서드 (0) | 2022.09.14 |
[Java] 예외 클래스 계층 구조, 사용자 예외 만들기 (2) | 2022.09.13 |
[Java] 문자열 나누기(파싱) 방법 - StringTokenizer, String, Scanner (0) | 2022.09.08 |