가변 배열
Coddy Java 여정의 논리와 흐름 섹션에 포함된 레슨 — 59개 중 6번째.
가변 배열은 각 행이 서로 다른 수의 열을 가질 수 있는 특별한 유형의 2차원 배열입니다. 즉, 배열의 배열이며, 각 "inner" 배열은 서로 다른 길이를 가질 수 있습니다. 이는 모든 행이 동일한 수의 열을 가지며 직사각형 모양을 형성하는 일반적인 2차원 배열과 다릅니다.
가변 배열은 직사각형 그리드에 깔끔하게 맞지 않는 데이터를 저장해야 할 때 유용합니다. 예를 들어, 단락의 각 문장의 단어를 저장하는 데 가변 배열을 사용할 수 있으며, 각 문장이 서로 다른 수의 단어를 가지고 있습니다.
Java에서 가변 배열을 선언하고 초기화하는 방법은 다음과 같습니다:
data_type[][] array_name = new data_type[number_of_rows][];
// Initialize each row with a different number of columns
array_name[0] = new data_type[number_of_columns_in_row_0];
array_name[1] = new data_type[number_of_columns_in_row_1];
// ... and so on배열을 처음 선언할 때 행의 수만 지정한다는 점에 유의하세요. 그런 다음 각 행을 별도로 초기화하며, 해당 행의 열 수를 지정합니다.
챌린지
쉬움createJaggedArray이라는 이름의 메서드를 생성하세요. 이 메서드는 정수 n을 입력으로 받아 정수형 가변 배열을 반환합니다. 가변 배열은 다음 구조를 가져야 합니다:
- 첫 번째 행은 1개의 요소를 가져야 합니다.
- 두 번째 행은 2개의 요소를 가져야 합니다.
- 세 번째 행은 3개의 요소를 가져야 합니다.
- 이어서,
n번째 행까지,n번째 행은n개의 요소를 가져야 합니다.
배열의 각 요소를 행과 열 인덱스의 곱으로 초기화하세요 (인덱스는 1부터 시작). 예를 들어, 두 번째 행 첫 번째 열의 요소는 2 * 1 = 2의 값을 가져야 합니다.
치트 시트
jagged 배열은 각 행이 서로 다른 열의 수를 가질 수 있는 2D 배열로, 모든 행이 동일한 길이를 가진 일반 2D 배열과 다릅니다.
jagged 배열을 선언하고 초기화하려면:
data_type[][] array_name = new data_type[number_of_rows][];
// Initialize each row with a different number of columns
array_name[0] = new data_type[number_of_columns_in_row_0];
array_name[1] = new data_type[number_of_columns_in_row_1];
// ... and so onjagged 배열을 선언할 때는 처음에 행의 수만 지정한 후, 각 행을 해당 열의 수로 개별적으로 초기화합니다.
직접 해보기
// 클래스 내부에만 코드를 작성하세요. main()이나 클래스 외부에 코드를 작성하지 마세요.
class CreateJaggedArray {
public static int[][] createJaggedArray(int n) {
// 여기에 코드를 작성하세요
}
}이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.