C# 강좌 : 제 16강 - 배열

   

배열 (Array)


배열 (Array)란 동일한 특성을 가지며 일정한 규칙에 따라 몇몇 요소가 나열되어 있는 데이터 집합입니다. 배열을 선언함으로써 다수의 데이터를 처리할 수 있습니다. C#에서 배열은 다음과 같이 선언할 수 있습니다.

데이터형식[ ] 배열이름 = new 데이터형식[ 용량 ];

int[] array = new int[5];
int[] array = new int[5] {1, 2, 3, 4, 5};
int[] array = new int[5];
array[0] = 1;
array[1] = 2;
array[2] = 3;
array[3] = 4;
array[4] = 5;
  • Tip : 용량을 지정하지 않으면 자동적으로 할당됩니다.


1 차원 배열 (One Dimesion)


1 차원 배열은 다음과 같이 표현 할 수 있습니다. index는 1이 아닌 0부터 시작하게 됩니다. 배열의 크기가 5라면 index0 ~ 4 까지 입니다.

1

int[] one_dimension = new int[5] { 1, 2, 3, 4, 5 };

for (int i = 0; i < one_dimension.Length; i++)
{
    Console.Write(one_dimension[i]);
}

실제 출력 값 : 12345
배열의 크기는 배열이름.Length를 이용하여 알 수 있습니다.


2 차원 배열 (Two Dimesion)


2 차원 배열은 다음과 같이 표현 할 수 있습니다. index0, 0 에서 n-1, m-1 까지 입니다.

2

int[] one_dimension = new int[5] { 1, 2, 3, 4, 5 };

int[,] two = new int[3, 2] { { 1, 2 }, { 3, 4 }, { 5, 6 } };

for (int i = 0; i < two_dimension.GetLength(0); i++)
{
    for (int j = 0; j < two_dimension.GetLength(1); j++)
    {
        Console.Write(two_dimension[i, j]);
    }
    Console.WriteLine();
}

실제 출력 값 : 123 / 456


배열의 크기는 배열이름.GetLength(차원)를 이용하여 알 수 있습니다. 배열이름.GetLength(0)n 방향, 배열이름.GetLength(1)m 방향 입니다.

  • Tip : 배열이름.Length 을 이용하면 n + m의 크기로 판단합니다.


  • Tip : 2 차원 이상의 경우 ,을 추가함으로써 사용할 수 있습니다.


가변 배열 (Adjustable Array)


가변 배열 (Adjustable Array)은 배열을 요소로 갖는 배열입니다. 첨자 하나만을 사용해서 1차원 배열에 접근하는 일은 불가능합니다. 가변 배열은 배열을 요소로써 접근합니다. C#에서 가변 배열은 다음과 같이 선언할 수 있습니다.

데이터형식[ ][ ] 배열이름 = new 데이터형식[가변배열의 용량][ ];

int[][] Adjustable = new int[3][];

Adjustable[0] = new int[5] { 1, 2, 3, 4, 5 };
Adjustable[1] = new int[] { 6, 7, 8};
Adjustable[2] = new int[] { 9, 10};

Console.Write(Adjustable[0][2]);

실제 출력 값 : 3

int[][] Adjustable = new int[2][] { new int[] { 1, 2, 3, 4, 5 }, 
                                    new int[4] { 6, 7, 8, 9 } };

Console.Write(Adjustable[1][2]);

실제 출력 값 : 8


  • Tip : 배열이름[n].GetLength(m) 을 이용하면 가변 배열안에 있는 배열의 크기를 판단할 수 있습니다.
  • Tip : 배열이름.GetLength(n) 을 이용하면 가변 배열의 크기를 판단 할 수 있습니다.


도움이 되셨다면 광고 클릭 부탁드립니다.

⤧  Next post C# 강좌 : 제 17강 - 구조체 ⤧  Previous post C# 예제 : Input Box