当前位置: 首页 > 编程笔记 >

如何在C#中不使用foreach的情况下从列表复制项目到列表?

孟开宇
2023-03-14
本文向大家介绍如何在C#中不使用foreach的情况下从列表复制项目到列表?,包括了如何在C#中不使用foreach的情况下从列表复制项目到列表?的使用技巧和注意事项,需要的朋友参考一下

List <T>是强类型对象的集合,可以通过索引对其进行访问,并具有用于排序,搜索和修改列表的方法。它是System.Collection.Generic命名空间下的ArrayList的常规版本。

List <T>与ArrayList等效,它实现了IList <T>。

它位于System.Collection.Generic命名空间下。

List <T>可以包含指定类型的元素。它提供编译时类型检查,并且不执行装箱/拆箱,因为它是通用的。

可以使用Add()AddRange()方法或collection-initializer语法添加元素。

可以通过传递索引(例如myList [0])来访问元素。索引从零开始。与ArrayList相比,List <T>的执行速度更快,出错更少。

可以通过索引,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
 类似资料:
  • 我的老师想让我通过迭代找到用户10个输入的中位数。 这就是我使用迭代来查找总和,奇数数,最大值和质数数的方式。但我一直坚持要找到中位数。

  • 我有一个存储库,它返回一个流量,并希望将结果设置为另一个需要列表的对象。有没有其他方法可以在不阻塞的情况下以列表的形式获取结果? 这座大楼正在运转,但需要很长时间。

  • rbindlist做的正是我需要的,但'do.call'做不到! do.Call不是我想要的

  • 问题内容: 嘿。我有一个很大的数组,我想找到第N个最大值。我可以简单地对数组进行排序,然后采用第N个元素,但是我只对一个元素感兴趣,因此可能有比对整个数组进行排序更好的方法… 问题答案: 排序至少需要O(nlogn)运行时间- 有非常有效的选择算法可以在线性时间内解决您的问题。 (有时是),它基于quicksort(递归分区)的思想,是一个很好的解决方案(请参阅伪代码的链接+另一个示例)。

  • 我的代码如下: WebElement stateDropDown=驱动程序。findElement(By.xpath(“/html/body/form/div[3]/main/div/div/div/span/div/fieldset/div[4]/div[1]/span/span[1]”);列表选项=状态下拉列表。findElements(By.xpath(“/html/body/div[1]/

  • 问题内容: 我想知道是否可以更改列表中项目符号的颜色。 我有一个这样的清单: 对我来说,不可能在li中插入任何内容,例如“ span”或“ p”。那么,我可以以某种巧妙的方式更改项目符号的颜色,但不能更改文本的颜色吗? 问题答案: 如果可以使用图像,则可以执行此操作。如果没有图像,您将只能更改项目符号的颜色,而不能更改文本的颜色。 使用图像 不使用图像 然后,您必须编辑HTML标记,并在列表中包括