如何在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.