Menu
Coddy logo textTech

Accessing 2D Array Elements

Coddy C# 여정의 논리 및 흐름 섹션에 포함된 레슨 — 66개 중 3번째.

2차원 배열의 요소에 접근하는 것은 일반 배열과 유사한 구문을 사용하지만, 행에 대한 하나와 열에 대한 하나의 두 인덱스가 필요합니다.

참고: C#에는 두 종류의 다차원 배열이 있습니다: 직사각형 배열 (int[,]) 및 가변 배열 (int[][]). 이 강의에서는 각 행이 자체 배열인 가변 배열을 다룹니다.

3행 4열의 가변 배열을 생성하세요:

int[][] grid = new int[3][];
grid[0] = new int[4];
grid[1] = new int[4];
grid[2] = new int[4];

특정 위치(행 인덱스 1, 열 인덱스 2)에 값을 할당하세요:

grid[1][2] = 42;

특정 위치(행 인덱스 0, 열 인덱스 3)에서 값을 읽기:

int value = grid[0][3];

인덱스가 0부터 시작하므로, 행 인덱스 0은 1번째 행이고 열 인덱스 3은 4번째 열입니다.

배열 인덱스는 0부터 시작한다는 것을 기억하세요. 따라서 유효한 인덱스 범위는 다음과 같습니다:

  • 행: 인덱스 0에서 2까지 (3행 배열의 경우 — 1번째 행은 인덱스 0, 2번째는 인덱스 1, 3번째는 인덱스 2)
  • 열: 인덱스 0에서 3까지 (4열 배열의 경우 — 1번째 열은 인덱스 0, 2번째는 인덱스 1, 그리고 계속)
이 범위를 벗어나는 요소에 접근하려고 하면 (예: grid[3][2]), IndexOutOfRangeException이 발생합니다.
challenge icon

챌린지

중급

getElement이라는 이름의 메서드를 작성하세요. 이 메서드는 세 개의 인수를 받습니다:

  1. 2차원 정수 배열 (int[][] matrix)
  2. 행 인덱스 (int row)
  3. 열 인덱스 (int col)

인덱스가 유효하면 지정된 위치의 요소를 반환해야 합니다. 인덱스가 범위를 벗어나면 -1을 반환해야 합니다.

치트 시트

2D 배열의 요소에 두 개의 인덱스를 사용하여 접근: [row][column]

2D 배열 생성:

int[][] grid = new int[3][];
grid[0] = new int[4];
grid[1] = new int[4];
grid[2] = new int[4];

값 할당:

grid[1][2] = 42;

값 읽기:

int value = grid[0][3];

배열 인덱스는 0부터 시작합니다. 유효 범위를 벗어나는 요소에 접근하면 IndexOutOfRangeException이 발생합니다.

직접 해보기

public class GetElement
{
    public static int getElement(int[][] array, int row, int col)
    {
        // 여기에 코드를 작성하세요
    }
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

논리 및 흐름의 모든 레슨