Ch5-24. Arrays
0. 목차
Chapter5. 배열
Ch5 - 24. Arrays로 배열 다루기
Ch5 - 24. Arrays로 배열 다루기
▶ 배열의 비교와 출력
▷ Arrays.equals() : 1차원 배열 비교
String[][] str2D = new String[][] { { "aaa", "bbb" }, { "AAA", "BBB" } };
String[][] str2D2 = new String[][] { { "aaa", "bbb" }, { "AAA", "BBB" } };
System.out.println(Arrays.equals(str2D, str2D2));
// console
false
비교불가
▷ Arrays.deepEquals() : 2차원 이상 다차원 비교
String[][] str2D = new String[][] { { "aaa", "bbb" }, { "AAA", "BBB" } };
String[][] str2D2 = new String[][] { { "aaa", "bbb" }, { "AAA", "BBB" } };
System.out.println(Arrays.deepEquals(str2D, str2D2));
// console
true
▷ Arrays.toString() : 1차원 배열 출력
int[] arr = { 0, 1, 2, 3, 4 };
System.out.println(Arrays.toString(arr));
// console
[0, 1, 2, 3, 4]
▷ Arrays.deepToString() : 2차원 이상 다차원 배열 출력
int[][] arr2D = { { 11, 12 }, { 21, 22 } };
System.out.println(Arrays.deepToString(arr2D));
// console
[[11, 12], [21, 22]]
▶ 배열의 복사
▷ copyOf(메서드, 복사 수)
arr의 0 ~ 복사 수
까지 복사
Arrays.copyOf(arr, arr.length);
int[] arr = {0, 1, 2, 3, 4}; int[] arr2 = Arrays.copyOf(arr, arr.length); System.out.println(Arrays.toString(arr2)); // console [0, 1, 2, 3, 4]
Arrays.copyOf(arr, 3);
int[] arr = {0, 1, 2, 3, 4}; int[] arr3 = Arrays.copyOf(arr, 3); System.out.println(Arrays.toString(arr3)); // console [0, 1, 2]
Arrays.copyOf(arr, 7);
int[] arr4 = Arrays.copyOf(arr, 7); System.out.println(Arrays.toString(arr4)); // console [0, 1, 2, 3, 4, 0, 0]
▷ copyOfRange(메서드, 복사 범위의 첫 인덱스, 복사 범위의 마지막 인덱스)
from ~ to
의 개념
첫 인덱스 ~ 마지막 인덱스
to
는 to - 1 : [마지막 인덱스]
는 미포함 [마지막 인덱스 - 1]
은 포함
Arrays.copyOfRange(arr, 0, arr.length);
int[] arr = {0, 1, 2, 3, 4}; int[] arr5 = Arrays.copyOfRange(arr, 0, arr.length); // arr의 [0] ~ [5 - 1] System.out.println(Arrays.toString(arr5)); // console [0, 1, 2, 3, 4]
Arrays.copyOfRange(arr, 2, 4);
int[] arr = {0, 1, 2, 3, 4}; int[] arr6 = Arrays.copyOfRange(arr, 2, 4); // arr의 [2] ~ [4 - 1] System.out.println(Arrays.toString(arr6)); // console [2, 3]
Arrays.copyOfRange(arr, 3, 9);
int[] arr = {0, 1, 2, 3, 4}; int[] arr7 = Arrays.copyOfRange(arr, 3, 9); // arr의 [3] ~ [9 - 1] System.out.println(Arrays.toString(arr7)); // console [3, 4, 0, 0, 0, 0]
▶ 배열의 정렬 - 오름차순
▷ sort()
int[] arr = {4, 5, 3, 2, 1};
Arrays.sort(arr);
System.out.println(Arrays.toString(arr));
// console
[1, 2, 3, 4, 5]