Computer >> 컴퓨터 >  >> 프로그램 작성 >> C#

C#에서 IEnumerable을 List로 변환하고 List를 다시 IEnumerable로 변환하는 방법은 무엇입니까?

<시간/>

IEnumerable은 IEnumerator 인터페이스를 반환하는 단일 메서드 GetEnumerator()를 정의하는 인터페이스입니다. 열거할 수 있는 모든 비제네릭 컬렉션의 기본 인터페이스입니다.

이것은 IEnumerable을 foreach 문과 함께 사용할 수 있음을 구현하는 컬렉션에 대한 읽기 전용 액세스에 대해 작동합니다.

목록 클래스는 인덱스로 액세스할 수 있는 개체 목록을 나타냅니다. System.Collection.Generic 네임스페이스 아래에 있습니다.

List 클래스는 정수, 문자열 등과 같은 다양한 유형의 컬렉션을 만드는 데 사용할 수 있습니다. List 클래스는 목록을 검색, 정렬 및 조작하는 메서드도 제공합니다.

예시 1

static void Main(string[] args) {
   List list = new List();
   IEnumerable enumerable = Enumerable.Range(1, 5);

   foreach (var item in enumerable) {
      list.Add(item);
   }
   foreach (var item in list) {
      Console.WriteLine(item);
   }
   Console.ReadLine();
}

출력

1
2
3
4
5

예시 2

목록을 IEnumerable로 변환

static void Main(string[] args) {
   List list = new List();
   IEnumerable enumerable = Enumerable.Range(1, 5);

   foreach (var item in enumerable) {
      list.Add(item);
   }
   foreach (var item in list) {
      Console.WriteLine(item);
   }
   IEnumerable enumerableAfterConversion= list.AsEnumerable();
   foreach (var item in enumerableAfterConversion) {
      Console.WriteLine(item);
   }
   Console.ReadLine();
}

출력

1
2
3
4
5
1
2
3
4
5