반응형
가변 배열(Jagged Array)은 다차원 배열의 일종으로, 각 차원의 배열이 다른 길이를 가질 수 있는 배열입니다. Java에서는 가변 배열을 사용하여 배열의 각 행이 서로 다른 길이를 갖도록 할 수 있습니다. 이는 고정된 길이를 가지는 일반적인 다차원 배열과 다릅니다.
1. 가변 배열의 특징
- 가변 길이: 각 행이 다른 길이를 가질 수 있습니다.
- 선언 및 초기화: 가변 배열은 배열의 배열로 선언되고, 각 배열을 개별적으로 초기화할 수 있습니다.
- 유연성: 다양한 길이의 배열을 필요로 하는 상황에서 유용합니다.
2. 가변 배열 선언 및 초기화
다음은 가변 배열을 선언하고 초기화하는 방법입니다:
// 가변 배열 선언
int[][] jaggedArray = new int[3][];
// 각 행의 길이를 개별적으로 초기화
jaggedArray[0] = new int[2]; // 첫 번째 행에 2개의 열
jaggedArray[1] = new int[3]; // 두 번째 행에 3개의 열
jaggedArray[2] = new int[1]; // 세 번째 행에 1개의 열
3. 가변 배열 예제
다음은 가변 배열을 선언, 초기화, 요소 접근 및 출력하는 예제입니다:
public class JaggedArrayExample {
public static void main(String[] args) {
// 가변 배열 선언과 초기화
int[][] jaggedArray = new int[3][];
jaggedArray[0] = new int[2]; // 첫 번째 행에 2개의 열
jaggedArray[1] = new int[3]; // 두 번째 행에 3개의 열
jaggedArray[2] = new int[1]; // 세 번째 행에 1개의 열
// 배열의 요소 초기화
jaggedArray[0][0] = 1;
jaggedArray[0][1] = 2;
jaggedArray[1][0] = 3;
jaggedArray[1][1] = 4;
jaggedArray[1][2] = 5;
jaggedArray[2][0] = 6;
// 배열의 모든 요소 출력
for (int i = 0; i < jaggedArray.length; i++) {
for (int j = 0; j < jaggedArray[i].length; j++) {
System.out.print(jaggedArray[i][j] + " ");
}
System.out.println();
}
// 배열의 특정 요소 접근 및 변경
jaggedArray[1][2] = 10; // 두 번째 행의 세 번째 열 값을 10으로 변경
System.out.println("Updated value at [1][2]: " + jaggedArray[1][2]);
// 배열의 변경된 요소 출력
System.out.println("Updated Jagged Array:");
for (int i = 0; i < jaggedArray.length; i++) {
for (int j = 0; j < jaggedArray[i].length; j++) {
System.out.print(jaggedArray[i][j] + " ");
}
System.out.println();
}
}
}
4. 설명
- 배열 선언과 초기화:
jaggedArray
는int[3][]
로 선언되어 3개의 행을 가집니다.- 각 행은 다른 길이로 초기화됩니다: 첫 번째 행은 2개의 열, 두 번째 행은 3개의 열, 세 번째 행은 1개의 열을 가집니다.
- 요소 초기화:
- 각 행의 요소를 개별적으로 초기화합니다.
- 요소 출력:
- 중첩된
for
루프를 사용하여 배열의 모든 요소를 출력합니다.
- 중첩된
- 요소 변경:
- 특정 요소를 변경하고, 변경된 요소를 다시 출력하여 확인합니다.
이 예제를 통해 가변 배열의 선언, 초기화, 접근, 변경 및 출력 방법을 이해할 수 있습니다.
반응형
'언어 > Java' 카테고리의 다른 글
[ Java ] java.util.Scanner를 통해서 입력 받기 (0) | 2024.07.31 |
---|---|
[ Java ] arraycopy()를 사용해서 배열 복사하기 (0) | 2024.07.31 |
[ Java ] 다차원 배열을 사용하는 예제 (0) | 2024.07.31 |
[ Java ] 다중 배열의 생성과 사용하기 (0) | 2024.07.31 |
[ Java ] ArrayList 사용 (0) | 2024.06.17 |