Arrays
📚참고
컬렉션 프레임워크와 핵심 인터페이스
Arrays 클래스
- java.util.Arrays 클래스
- 배열을 다루는데 편리한 메서드(static) 제공
1. 배열의 출력 - toString()
static String toString(char[] a);
static String toString(int[] a);
2. 배열의 복사 - copyOf(), copyOfRange()
int[] arr = {0, 1, 2, 3, 4};
int[] arr2 = Arrays.copyOf(arr, arr.length); // [0, 1, 2, 3, 4]
int[] arr3 = Arrays.copyOf(arr, 3); // [0, 1, 2]
int[] arr4 = Arrays.copyOf(arr, 7); // [0, 1, 2, 3, 4, 0, 0]
int[] arr5 = Arrays.copyOfRange(arr, 2, 4); // [2, 3] (4는 불포함, from <= x < to)
int[] arr6 = Arrays.copyOfRange(arr, 0, 7); // [0, 1, 2, 3, 4, 0, 0]
3. 배열 채우기 - fill(), setAll()
int[] arr = new int[5];
Arrays.fill(arr, 9); // [9, 9, 9, 9, 9]
// [1, 5, 2, 1, 1] => 1~6 사이의 랜덤값
Arrays.setAll(arr, (i) -> (int) (Math.random()*5) + 1);
4. 배열의 정렬과 검색 - sort(), binarySearch()
int[] arr = {3, 2, 0, 1, 4};
Arrays.sort(); // 바이너리서치 전 반드시 정렬 필요
System.out.println(Arrays.toString(arr)); // [0, 1, 2, 3, 4]
int idx = Arrays.binarySearch(arr, 2); // idx = 2
5. 다차원 배열 출력 - deepToString()
int[][] arr2D = {{11, 12}, {21, 22}};
Arrays.deepToString(arr2D); // [[11, 12], [21, 22]]
6. 다차원 배열 비교 - deepEquals()
String[][] str2D = new String[][]{{"aaa", "bbb"}, {"AAA", "BBB"}};
String[][] str2D2 = new String[][]{{"aaa", "bbb"}, {"AAA", "BBB"}};
Arrays.deepEquals(str2D, str2D2);
7. 배열을 List로 변환
List list = Arrays.asList(new Integer[]{1, 2, 3, 4, 5}); // list=[1, 2, 3, 4, 5]
List list = Arrays.asList(1, 2, 3, 4, 5); // list=[1, 2, 3, 4, 5]
list.add(6); // UnsupportedOperationException 발생 => list는 읽기전용
'JAVA > 컬렉션 프레임워크' 카테고리의 다른 글
Set (0) | 2021.06.15 |
---|---|
Comparator & Comparable (0) | 2021.06.01 |
Iterator (0) | 2021.05.18 |
LinkedList (0) | 2021.05.04 |
컬렉션 프레임워크 (Collection Framework) (0) | 2021.05.02 |
댓글
이 글 공유하기
다른 글
-
Set
Set
2021.06.15 -
Comparator & Comparable
Comparator & Comparable
2021.06.01 -
Iterator
Iterator
2021.05.18 -
LinkedList
LinkedList
2021.05.04