Computer >> Máy Tính >  >> Lập trình >> C#

Làm cách nào để chuyển IEnumerable thành List và List trở lại IEnumerable trong C #?

IEnumerable là một giao diện xác định một phương thức GetEnumerator () duy nhất trả về một giao diện IEnumerator. Đây là giao diện cơ sở cho tất cả các tập hợp không chung chung có thể được liệt kê.

Điều này hoạt động đối với quyền truy cập chỉ đọc vào một bộ sưu tập triển khai rằng IEnumerable có thể được sử dụng với một câu lệnh foreach.

Lớp danh sách đại diện cho danh sách các đối tượng có thể được truy cập bằng chỉ mục. Nó nằm trong không gian tên System.Collection.Generic.

Lớp danh sách có thể được sử dụng để tạo một tập hợp các kiểu khác nhau như số nguyên, chuỗi, v.v. Lớp danh sách cũng cung cấp các phương thức để tìm kiếm, sắp xếp và thao tác với danh sách.

Ví dụ 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();
}

Đầu ra

1
2
3
4
5

Ví dụ 2

chuyển đổi Danh sách thành 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();
}

Đầu ra

1
2
3
4
5
1
2
3
4
5