1. 문자열 비교
Arrays.equals()
- 1차원 배열 비교에 사용
Arrays.deepEquals()
- 다차원 배열 비교에 사용
String[][] sArr2D = new String[][] { {"ABC", "DEF"}, {"GHI", "GHI"} };
String[][] sArr2D2 = new String[][] { {"ABC", "DEF"}, {"GHI", "GHI"} };
System.out.println("equals: " + Arrays.equals(sArr2D, sArr2D2));
System.out.println("deepEquals: " + Arrays.deepEquals(sArr2D, sArr2D2));
출력물
equals: false
deepEquals: true
2. 문자열 출력
Arrays.toString()
- 1차원 배열을 문자열로 변환하여 모든 요소 출력
int[] iArr = { 1, 2, 3, 4, 5 };
System.out.println("iArr: " +Arrays.toString(iArr));
출력물
iArr: [1, 2, 3, 4, 5]
Arrays.deeptToString()
- 다차원 배열을 문자열로 변환하여 모든 요소 출력
int[][] iArr2D = { {111, 222}, {333, 444} };
System.out.println("iArr2D: " + Arrays.deepToString(iArr2D));
출력물
iArr2D: [[111, 222], [333, 444]]
3. 배열의 복사
Arrays.copyOf()
- 배열을 정해진 길이 만큼 복사
Arrays.copyOfRange()
- 배열을 정해진 범위 만큼 복사
- 0~6 이라면 6은 범위에 포함되지 않으므로 0~5까지 복사
int[] iArr = { 1, 2, 3, 4, 5 };
int[] iArr2 = Arrays.copyOf(iArr, iArr.length);
int[] iArr3 = Arrays.copyOf(iArr, 2);
int[] iArr4 = Arrays.copyOf(iArr, 6);
int[] iArr5 = Arrays.copyOfRange(iArr, 1, 4);
int[] iArr6 = Arrays.copyOfRange(iArr, 0, 6);
// Arrays.copyOf
System.out.println("iArr: " + Arrays.toString(iArr));
System.out.println("iArr2: " + Arrays.toString(iArr2));
System.out.println("iArr3: " + Arrays.toString(iArr3));
System.out.println("iArr4: " + Arrays.toString(iArr4));
// Arrays.copyOfRange
System.out.println("iArr5: " + Arrays.toString(iArr5));
System.out.println("iArr6: " + Arrays.toString(iArr6));
4. 배열의 정렬
Arrays.sort()
- sort()는 기본적으로 오름차순만 제공
예제 1 - 숫자 오름차순, 내림차순
public void method1() {
int[] szArr = {2, 5, 7, 1, 3};
System.out.println("szArr Before");
for(int value : szArr) {
System.out.print(value + " ");
}
System.out.println("\n");
System.out.println("szArr Ascending");
Arrays.sort(szArr);
for(int value : szArr) {
System.out.print(value + " ");
}
System.out.println("\n");
System.out.println("szArr Descending");
Integer[] integerArray = {2, 5, 7, 1, 3};
Arrays.sort(integerArray, Collections.reverseOrder());
System.out.println(Arrays.toString(integerArray));
}
출력물
szArr Before
2 5 7 1 3
szArr Ascending
1 2 3 5 7
szArr Descending
[7, 5, 3, 2, 1]
예제 2 - 문자열 오름차순, 내림차순
public void method2() {
String[] szStrArr = {"Apple", "Orange", "banana", "Melon", "lemon", "포도", "수박"};
System.out.println("Ascending");
Arrays.sort(szStrArr);
System.out.println(Arrays.toString(szStrArr));
System.out.println();
System.out.println("Descending");
Arrays.sort(szStrArr, Collections.reverseOrder());
System.out.println(Arrays.toString(szStrArr));
}
출력물
Ascending
[Apple, Melon, Orange, banana, lemon, 수박, 포도]
Descending
[포도, 수박, lemon, banana, Orange, Melon, Apple]
'Developer TABLE > Java' 카테고리의 다른 글
2차원 배열 랜덤 값 중복 제거 (0) | 2021.08.31 |
---|---|
가변 배열 (0) | 2021.08.31 |
2차원 배열 (0) | 2021.08.31 |