如何在C#中不使用foreach迴圈將列表中的項複製到另一個列表?


List<T> 是一個強型別物件的集合,可以透過索引訪問,並具有排序、搜尋和修改列表的方法。它是 System.Collection.Generic 名稱空間下的 ArrayList 的泛型版本。

List<T> 等同於 ArrayList,它實現了 IList<T>。

它位於 System.Collection.Generic 名稱空間下。

List<T> 可以包含指定型別的元素。它提供編譯時型別檢查,並且由於它是泛型的,因此不執行裝箱/拆箱操作。

可以使用 Add()、AddRange() 方法或集合初始化器語法新增元素。

可以透過傳遞索引(例如 myList[0])來訪問元素。索引從零開始。List<T> 的效能比 ArrayList 更快,並且錯誤更少。

列表可以透過索引、for/foreach 迴圈和 LINQ 查詢進行訪問。列表的索引從零開始。

像陣列一樣,在方括號中傳遞索引來訪問單個列表項。使用 foreach 或 for 迴圈迭代 List<T> 集合。

方法 1

class Program{
   public static void Main(){
      List<int>originalList=new List<int>(){1,2,3,4,5,7,8,9};
      List<Int32>copy = new List<Int32>(originalList);
      foreach (var item in copy){
         System.Console.WriteLine(item);
      }
      Console.ReadLine();
   }
}

輸出

1
2
3
4
5
7
8
9

方法 2

class Program{
   public static void Main(){
      List<int>originalList = new List<int>() { 1, 2, 3, 4, 5, 7, 8, 9 };
      List<Int32> copy = originalList.ToList();
      foreach (var item in copy){
         System.Console.WriteLine(item);
      }
      Console.ReadLine();
   }
}

輸出

1
2
3
4
5
7
8
9

方法 3

class Program{
   public static void Main(){
      List<int> originalList = new List<int>() { 1, 2, 3, 4, 5, 7, 8, 9 };
      List<Int32> copy = originalList.GetRange(0, 3);
      foreach (var item in copy){
         System.Console.WriteLine(item);
      }
      Console.ReadLine();
   }
}

輸出

1
2
3

更新於:2020年9月25日

1K+ 次瀏覽

啟動您的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.