Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C#에서 AsEnumerable() 메서드로 IEnumerable 형식으로 캐스팅하는 방법

C#에서 특정 형식을 IEnumerable에 해당하는 형식으로 캐스팅하려면 AsEnumerable() 메서드를 사용하면 됩니다. 이 메서드는 System.Linq 네임스페이스에 포함된 확장 메서드(Extension Method)로, 배열이나 컬렉션을 IEnumerable<T> 타입으로 변환해 LINQ 연산을 더 유연하게 활용할 수 있게 해줍니다.

예제 소개

이번 예제에서는 정수형 배열을 하나 선언하고, 각 요소에 값을 할당한 뒤 이를 IEnumerable로 변환하는 과정을 살펴보겠습니다.

먼저 크기가 10인 int 배열을 선언합니다.

int[] myArr = new int[10];
myArr[0] = 1;
myArr[1] = 2;
myArr[2] = 3;
myArr[3] = 4;
myArr[4] = 5;

그다음 AsEnumerable() 메서드를 호출하여 배열을 IEnumerable 형식으로 캐스팅합니다.

myArr.AsEnumerable();

전체 예제 코드

아래는 배열의 모든 요소에 값을 넣고, AsEnumerable()로 변환한 후 foreach 문으로 각 요소를 출력하는 완전한 예제입니다.

using System;
using System.Linq;

class Demo {
   static void Main() {
      int[] myArr = new int[10];
      myArr[0] = 1;
      myArr[1] = 2;
      myArr[2] = 3;
      myArr[3] = 4;
      myArr[4] = 5;
      myArr[5] = 6;
      myArr[6] = 7;
      myArr[7] = 8;
      myArr[8] = 9;
      myArr[9] = 10;

      // AsEnumerable()로 IEnumerable 형식으로 변환
      var a = myArr.AsEnumerable();

      // 결과 출력
      foreach (var item in a) {
         Console.WriteLine(item);
      }
   }
}

실행 결과

프로그램을 실행하면 배열에 저장된 값들이 순서대로 출력됩니다.

1
2
3
4
5
6
7
8
9
10

정리

AsEnumerable()은 원본 컬렉션을 복사하지 않고 동일한 데이터를 IEnumerable<T> 관점에서 바라보게 해주는 가벼운 변환 메서드입니다. 배열뿐만 아니라 List, Dictionary 등 다양한 컬렉션에 적용할 수 있으며, LINQ의 표준 쿼리 연산자를 활용할 때 유용하게 사용됩니다.