C# 배열(Array) 사용 방법(배열 선언, 정의, 초기화, 사용 예제)


C#에서 배열(Array)은 인덱스(Index)로 액세스할 수 있는 동일한 데이터 유형의 값으로 만들어지는 순차적 데이터 집합을 말합니다.

배열의 모든 요소는 배열 이름과 인덱스를 사용하여 액세스할 수 있으며, 배열의 인덱스는 0부터 시작해서 1씩 증가하면서 지정됩니다.

배열을 잘 활용하면 불필요한 변수 사용을 줄일 수 있고, 프로그램 코딩을 단순화 할 수 있습니다.

이번 글에서는 C# 배열(Array) 사용 방법(배열 선언, 정의, 초기화, 사용 예제)에 대해 알아보겠습니다.

C# 배열(Array) 선언

▶ C#에서 배열을 선언하는 방법은 아래 구문 형태를 사용하면 됩니다.

  • dataType[] arrayName;
  • dataType : 배열에 저장될 요소들의 데이터 유형(Data Type) 입니다.
  • arrayName : 배열 이름입니다.
  • 예제 : int[] numbers; ▷ Numbers라는 배열 이름으로 정수형 데이터 집합을 가집니다.
    string[] names; ▷ Names라는 배열 이름으로 문자형 데이터 집합을 가집니다.

C# 배열(Array) 정의

▶ C#에서 배열을 선언만 한다고 해서 바로 사용할 수는 없습니다. 배열을 사용하기 위해서는 배열 정의가 필요합니다.

▶ 일반적으로 배열 정의는 아래 구문 형태를 따릅니다.

  • arrayName = new dataType[size];
  • arrayName은 배열 선언에서 선언한 배열 이름입니다.
  • new : 정의를 위한 키워드입니다.
  • dataType : 배열 요소의 데이터 유형(Data Type) 입니다.
  • size : 배열의 크기 입니다. 즉, 배열을 채울 요소의 최대 수 입니다.
  • 예제 : int[] numbers = new int[5]; ▷ 배열에 5개의 정수형 데이터를 저장할 수 있습니다.
    string[] names = new string[10]; ▷ 배열에 10개의 문자형 데이터를 저장할 수 있습니다.

C# 배열(Array) 초기화

▶ C#에서 배열 초기화는 배열에 요소를 채우는 과정입니다. 이렇게 채워진 배열 요소를 다른 구문에서 사용하게 됩니다.

  • 배열 초기화는 중괄호({,})와 배열 요소를 나누는 쉽표(,)를 사용하여 지정하는 값으로 배열을 초기화 할 수 있습니다.
  • int[] numbers = { 87, 95, 48, 76, 9, 105 };
  • string[] names = { “LEE”, “KIM”, “PARK”, “SON”, “SHIN” };

▶ 보통 배열을 사용할 때 선언, 정의, 초기화를 한 번에 처리하는 경우가 많습니다.

  • int[] numbers; (선언)
  • numbers = new int[6]; (정의)
  • numbers = { 87, 95, 48, 76, 9, 105 }; (초기화)
  • int[] numbers = { 87, 95, 48, 76, 9, 105 }; (선언, 정의, 초기화를 한번에 처리)

C# 배열(Array) 사용 예제 1 – 정수형

▶ 아래 예제는 정수형 배열을 처리하는 예제 입니다.

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] numbers = { 879548769105 };
 
            Console.WriteLine(“Numbers[0] : “ + numbers[0]);
            Console.WriteLine(“Numbers[3] : “ + numbers[3]);
            Console.WriteLine(“Numbers[5] : “ + numbers[5]);
        }
    }
}
 

▼ 위 예제의 실행 결과입니다.

C# 배열(Array) 사용 방법(배열 선언, 정의, 초기화, 사용 예제)
  • 배열 인덱스 0, 3, 5에 있는 요소의 값을 가져옵니다. 첫 번째, 네 번째, 여섯 번째 요소가 이에 해당합니다.

C# 배열(Array) 사용 예제 2 – 문자형

▶ 아래 예제는 문자형 배열을 처리하는 예제 입니다.

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            string[] names = { “LEE”“KIM”“PARK”“SON”“SHIN” };
 
            Console.WriteLine(“Names[1] : “ + names[1]);
            Console.WriteLine(“Names[4] : “ + names[4]);
        }
    }
}
 

▼ 위 예제의 실행 결과입니다.

C# 배열(Array) 사용 예제 2 - 문자형
  • 배열 인덱스 1, 4에 있는 요소의 값을 가져옵니다. 두 번째, 다섯 번째 요소가 이에 해당합니다.

C# 배열의 길이(인덱스의 크기) 가져오기

▶ 아래 예제는 배열의 길이(인덱스 크기)를 가져오는 예제입니다.

  • arrayName.Length : 배열의 길이를 정수 값으로 반환 합니다.
namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            string[] names = { “LEE”“KIM”“PARK”“SON”“SHIN” };
 
            int len = names.Length;
            Console.WriteLine(“Length of array : “ + len);
        }
    }
}
 

▼ 위 예제의 실행 결과입니다.

C# 배열의 길이(인덱스의 크기) 가져오기
  • 배열의 요소가 5개 있음을 보여줍니다. 즉, 배열 요소의 총 개수를 알려줍니다.

C# 배열의 인덱스 범위를 벗어난 인덱스를 액세스 할 때 오류 발생

▶ 만약 배열을 액세스 할 때 인덱스 범위를 벗어나면 오류가 발생합니다.

  • 아래 예제에서 names 배열의 인덱스 범위는 0에서 4입니다.
  • 이 범위를 벗어난 인덱스로 액세스 하는 경우 예외 처리가 발생하게 됩니다.
  • System.IndexOutOfRangeException: 인덱스가 배열 범위를 벗어났습니다.
namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            string[] names = { “LEE”“KIM”“PARK”“SON”“SHIN” };
 
            Console.WriteLine(“Names[6] : “ + names[6]);
        }
    }
}
 

▼ 위 예제의 실행 결과입니다. System.IndexOutOfRangeException 오류가 발생합니다.

C# 배열의 인덱스 범위를 벗어난 인덱스를 액서스 할 때 오류 발생

C#에서 배열(Array)을 처리하는 일반적인 예제 3가지

▶ C#에서 배열(Array)를 처리하는 방법은 for 문, while 문, foreach 문을 주로 사용해서 처리하게 됩니다.

  • 아래 예제는 동일한 결과를 처리하는 for, while, foreach 문에 대한 예제입니다.
namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            string[] names = { “LEE”“KIM”“PARK”“SON”“SHIN” };
 
            //for문 사용 예제
            for (int index = 0; index < names.Length; index++)
            {
                Console.WriteLine(names[index]);
            }
 
            //while문 사용 예제
            int index = 0;
            while (index < names.Length)
            {
                Console.WriteLine(names[index]);
                index++;
            }
 
            //foreach문 사용 예제
            foreach (string name in names)
            {
                Console.WriteLine(name);
            }
        }
    }
}
 

▼ 위 예제에서 for문, while문, foreach문 각각에 대해 동일한 결과를 아래와 같이 보여줍니다.

C#에서 배열(Array)을 처리하는 일반적인 예제 3가지

마무리

C# 프로그램을 개발할 때 배열(Array)을 적당하게 활용하면 프로그램을 한결 간결하게 구현할 수 있습니다.
생각보다 배열 사용이 어렵지 않다는 것을 이 글을 통해 알 수 있습니다.

C# 프로그램 개발 뿐만 아니라 자바(JAVA)나 파이썬 같은 다른 개발 언어에서도 배열을 사용해 보시길 권해드립니다.





이 글이 도움이 되었기를 바랍니다. ^-^


답글 남기기