본문 바로가기

명사 美 비격식 (무리 중에서) 아주 뛰어난[눈에 띄는] 사람[것]

JAVA

배열을 다루는데 유용한 메서드, Arrays

Arrays

배열을 다루는데 유용한 메서드가 정의됨.

 

copyOf()

배열의 복사본을 반환합니다. 새로운 길이가 지정된 경우 새 배열의 길이가 됩니다.

int[] array = {1, 2, 3, 4, 5};
int[] copiedArray = Arrays.copyOf(array, 3);

System.out.println(Arrays.toString(copiedArray)); // [1, 2, 3]

 

copyOfRange()

배열의 지정된 범위의 복사본을 반환합니다.

int[] array = {1, 2, 3, 4, 5};
int[] copiedArray = Arrays.copyOfRange(array, 1, 4);

System.out.println(Arrays.toString(copiedArray)); // [2, 3, 4]

 

fill()

배열을 지정된 값으로 채웁니다.

int[] array = new int[5];
Arrays.fill(array, 5);

System.out.println(Arrays.toString(array)); // [5, 5, 5, 5, 5]

 

setAll()

배열의 각 요소에 대해 지정된 함수를 적용하여 값을 설정합니다.

int[] array = new int[5];
Arrays.setAll(array, i -> i * 2);

System.out.println(Arrays.toString(array)); // [0, 2, 4, 6, 8]

 

sort()

배열을 오름차순으로 정렬합니다.

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

System.out.println(Arrays.toString(array)); // [1, 1, 2, 3, 4, 5, 6, 9]

 

binarySearch()

이진 검색 알고리즘을 사용하여 배열에서 지정된 키의 인덱스를 검색합니다. 만약 키가 존재하지 않으면 음수 값으로 반환됩니다.

int[] array = {1, 2, 3, 4, 5};
int index = Arrays.binarySearch(array, 3);

System.out.println("Index of 3: " + index); // Index of 3: 2

 

equals()

두 배열이 같은지 여부를 확인합니다.

int[] array1 = {1, 2, 3};
int[] array2 = {1, 2, 3};
boolean result = Arrays.equals(array1, array2);

System.out.println("Arrays are equal: " + result); // Arrays are equal: true

 

toString()

배열을 문자열로 변환하여 반환합니다.

int[] array = {1, 2, 3, 4, 5};
String arrayString = Arrays.toString(array);

System.out.println(arrayString); // [1, 2, 3, 4, 5]

 

 

 

asList()

배열을 고정 크기의 리스트로 변환합니다. 배열과 리스트는 서로에 대한 뷰(view)를 제공하므로, 배열의 변경이 리스트에 반영되고, 리스트의 변경이 배열에 반영됩니다.

String[] array = {"apple", "banana", "cherry"};
List<String> list = Arrays.asList(array);

System.out.println(list); // [apple, banana, cherry]

 

parallelXXX()

병렬 작업을 수행하기 위한 배열 버전의 메서드입니다. 이 메서드는 Java 8 이후에 추가되었습니다. 예를 들어, `parallelSort()`, `parallelPrefix()` 등이 있습니다.

int[] array = {3, 1, 4, 1, 5, 9, 2, 6};
Arrays.parallelSort(array);

System.out.println(Arrays.toString(array)); // [1, 1, 2, 3, 4, 5, 6, 9]

 

spliterator()

배열의 Spliterator를 반환합니다. Spliterator는 Java 8에서 추가된 새로운 인터페이스로, 병렬 스트림을 생성하고 병렬 작업을 수행하는 데 사용됩니다.

int[] array = {1, 2, 3, 4, 5};
Spliterator<Integer> spliterator = Arrays.spliterator(array);

spliterator.forEachRemaining(System.out::println);

 

stream()

배열을 스트림으로 변환합니다. 스트림을 사용하여 배열을 처리하고, 함수형 프로그래밍의 장점을 활용할 수 있습니다.

String[] array = {"apple", "banana", "cherry"};
Stream<String> stream = Arrays.stream(array);

stream.forEach(System.out::println);