📚참고
컬렉션 프레임워크와 핵심 인터페이스

 

 

 

 

 

 

 

 

 

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