C# - 배열 선언, 초기화 방법

빈 배열, 배열을 선언하는 다양한 방법을 소개합니다.

1. 빈(Empty) 배열 선언

빈 배열은 보통 아래와 같이 3가지 방법으로 생성할 수 있습니다.

  • new int[] {};
  • new int[0];
  • {}

아래 예제는 빈 배열을 생성하고 길이를 출력하는 예제입니다.

using System;

namespace Example {
    public class Program {
        public static void Main(string[] args) {

            int[] arr1 = new int[] {};
            int[] arr2 = new int[0];
            int[] arr3 = {};

            Console.WriteLine(arr1.Length);
            Console.WriteLine(arr2.Length);
            Console.WriteLine(arr3.Length);
        }
    }
}

Output:

0
0
0

2. 배열 선언과 동시에 특정 객체로 초기화

아래와 같은 방법으로 특정 객체를 초기 값으로 배열을 선언할 수 있습니다.

  • new int[] {a, b, c};
  • {a, b, c};

아래 예제는 int[] 배열을 정수 3개와 함께 초기화하는 예제입니다.

using System;

namespace Example {
    public class Program {
        public static void Main(string[] args) {

            int[] arr1 = new int[] {1, 2, 3};
            int[] arr2 = {1, 2, 3};

            Console.WriteLine(string.Join(", ", arr1));
            Console.WriteLine(string.Join(", ", arr2));
        }
    }
}

Output:

1, 2, 3
1, 2, 3

3. 배열 전체를 동일한 값으로 채우기

배열을 초기화할 때, 동일한 값으로 채우는 방법입니다.

Enumerable.Repeat(element, count)는 element를 배열에 count 개수만큼 추가하고 Enumerable로 리턴합니다. 배열로 변환하려면 ToArray()를 호출하면 됩니다.

아래는 크기가 10인 배열을 생성하고 0으로 가득 채우는 예제입니다.

using System;

namespace Example {
    public class Program {
        public static void Main(string[] args) {

            int[] array = Enumerable.Repeat(0, 10).ToArray();

            Console.WriteLine(string.Join(", ", array));
        }
    }
}

Output:

0, 0, 0, 0, 0, 0, 0, 0, 0, 0

3.1 Array.Fill()을 이용한 방법

배열을 생성한 뒤에, Array.Fill(array, element) 함수로 배열을 element로 채울 수 있습니다.

아래 예제는 크기가 10인 배열을 0으로 채우는 예제입니다.

using System;

namespace Example {
    public class Program {
        public static void Main(string[] args) {

            int[] array = new int[10];
            Array.Fill(array, 0);

            Console.WriteLine(string.Join(", ", array));
        }
    }
}

Output:

0, 0, 0, 0, 0, 0, 0, 0, 0, 0

4. 연속된 숫자로 배열 초기화

Enumerable.Range(start, count)는 start부터 연속적인 숫자를 count 개수만큼 배열에 추가합니다.

아래 예제는 0부터 9까지의 숫자가 추가된 배열을 생성합니다.

using System;

namespace Example {
    public class Program {
        public static void Main(string[] args) {

            int[] array = Enumerable.Range(0, 10).ToArray();

            Console.WriteLine(string.Join(", ", array));
        }
    }
}

Output:

0, 1, 2, 3, 4, 5, 6, 7, 8, 9

4.1 for문을 이용한 방법

배열 생성 후, for문으로 배열을 연속된 숫자로 초기화할 수 있습니다.

using System;

namespace Example {
    public class Program {
        public static void Main(string[] args) {

            int[] array = new int[10];

            int n = 0;
            for (int i = 0; i < array.Length; i++) {
                array[i] = n;
                n++;
            }
            Console.WriteLine(string.Join(", ", array));
        }
    }
}

Output:

0, 1, 2, 3, 4, 5, 6, 7, 8, 9
Loading script...
codechachaCopyright ©2019 codechacha