Arrays
by 민갤
Collection Framework
데이터 군을 저장하는 클래스들을 표준화한 설계
컬렉션 Collection : 다수의 데이터. 데이터 그룹
프레임웍 Framework : 표준화된 프로그래밍 방식.
Java.util.Arrays Class
배열을 다루는데 유용한 메서드가 정의되어 있는 클래스.
같은 기능의 메서드가 배열의 타입만 다르게 오버로딩되어 있다.
copyOf()
배열 전체 복사
copyOfRange()
배열의 일부를 복사해서 새로운 배열을 만들어 반환한다.
지정된 범위의 끝은 포함되지 않는다.
fill()
배열의 모든 요소를 지정된 값으로 채운다.
setAll()
배열을 채우는데 사용할 람다식 또는 함수형 인터페이스를 구현한 객체를 매개변수로 받는다.
sort()
배열을 정렬한다.
binarySearch()
배열에 저장된 요소를 검색하여 그 위치를 반환한다.
배열이 정렬된 상태에 사용해야 올바른 결과를 얻을 수 있다.
검색하는 값과 일치하는 요소가 여러 개일 경우 어떤 것의 위치가 반환될지 알 수 없다.
equals()
두 배열에 저장된 모든 요소를 비교하여 같으면 true를 반환한다.
1차원 배열에만 사용 가능하다.
다차원 배열의 비교는 deepEquals()를 사용한다.
toString()
배열의 모든 요소를 문자열로 편하게 출력할 수 있다.
1차원 배열에만 사용 가능하다.
다차원 배열에는 deepToStrong()을 사용한다.
asList(T... a)
배열을 List에 담아서 반환한다.
반환된 List는 크기를 변경할 수 없다. → 추가/삭제 불가능.
저장된 내용은 변경 가능하다.
크기를 변경할 수 있는 List가 필요한 경우 다음과 같이 한다.
람다와 스트림과 관련된 메서드
parallelXXX()
참고 서적: 자바의 정석 3판 2
parallel로 시작하는 이름의 메서드들
여러 쓰레드가 작업을 나누어 처리하도록 하여 보다 빠른 결과를 얻을 수 있다.
spliterator()
하나의 작업을 여러 쓰레드가 처리할 수 있게 여러 작업으로 나누는 Spliterator를 반환한다.
stream()
컬렉션을 스트림으로 변환한다.
참고 서적: 자바의 정석 3판 2