2차원 배열은 행(row)과 열(column)로 구성된 표 형태의 자료구조라고 생각할 수 있습니다. 즉, x개의 행과 y개의 열을 가진 구조로, 데이터를 격자 형태로 저장하고 관리하는 데 유용합니다.
2차원 배열 요소에 접근하는 방법
2차원 배열의 특정 요소에 접근하려면 첨자(subscript), 즉 행 인덱스와 열 인덱스를 함께 사용해야 합니다. C#에서는 대괄호 안에 쉼표로 구분하여 두 인덱스를 지정합니다.
int x = a[1,1]; Console.WriteLine(x);
위 코드에서 a[1,1]은 배열 a의 1행 1열 위치에 있는 요소 값을 가져와 변수 x에 저장합니다.
예제: 2차원 배열 요소 출력하기
다음 예제는 중첩 for 루프를 사용하여 5행 2열 크기의 2차원 배열에 선언과 동시에 초기화한 후, 모든 요소를 순회하며 출력하는 방법을 보여줍니다.
using System;
namespace Demo {
class MyArray {
static void Main(string[] args) {
/* 5행 2열의 배열 선언 및 초기화 */
int[] a = new int[5, 2] {{0,0}, {1,2}, {2,4}, {3,6}, {4,8} };
int i, j;
/* 각 배열 요소의 값 출력 */
for (i = 0; i < 5; i++) {
for (j = 0; j < 2; j++) {
Console.WriteLine("a[{0},{1}] = {2}", i, j, a[i,j]);
}
}
int x = a[1,1];
Console.WriteLine(x);
Console.ReadKey();
}
}
}코드 설명
int[] a = new int[5, 2]: 5개의 행과 2개의 열을 가진 2차원 정수 배열을 선언하고 초기값을 지정합니다.- 외부 for 루프는 행 인덱스(i)를, 내부 for 루프는 열 인덱스(j)를 순회합니다.
a[i,j]처럼 쉼표로 구분된 인덱스를 사용하여 각 위치의 값에 접근합니다.- 마지막에는
a[1,1]요소를 직접 참조하여 그 값을 출력합니다.
실행 결과
a[0,0] = 0 a[0,1] = 0 a[1,0] = 1 a[1,1] = 2 a[2,0] = 2 a[2,1] = 4 a[3,0] = 3 a[3,1] = 6 a[4,0] = 4 a[4,1] = 8 2
출력 결과에서 볼 수 있듯이, 마지막 줄의 2는 a[1,1]에 직접 접근하여 얻은 값입니다. 이처럼 C#에서는 행 인덱스와 열 인덱스를 쉼표로 구분하여 지정함으로써 2차원 배열의 원하는 요소에 손쉽게 접근할 수 있습니다.