C#如何向List<>中添加多个元素?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#如何向List<>中添加多个元素?相关的知识,希望对你有一定的参考价值。
即完成以下工作
for (int i = list1.Count; i <n; i++)
IsBankFree.Add(...);
多次调用Add方法,可以添加多个元素;或一次AddRange方法添加多个元素
例如:
List<int> list = new List<int>();// 添加5个元素
list.Add(100);
list.Add(200);
list.Add(300);
list.Add(400);
list.Add(500);
int[] a = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ;
// 添加 10 个元素
list.AddRange(a); 参考技术A 用AddRange这个方法,详见:
//
// 摘要:
// 将指定集合的元素添加到 System.Collections.Generic.List<T> 的末尾。
//
// 参数:
// collection:
// 一个集合,其元素应被添加到 System.Collections.Generic.List<T> 的末尾。集合自身不能为 null,但它可以包含为
// null 的元素(如果类型 T 为引用类型)。
//
// 异常:
// System.ArgumentNullException:
// collection 为 null。
public void AddRange(IEnumerable<T> collection);追问
调用.addrange(new list(16))后为什么.count没有增加?
追答你没理解new list(16)这个的作用,
作用:初始化 System.Collections.Generic.List 类的新实例,该实例为空并且具有指定的初始容量。
意义:List在被创建时,可以指定初始大小,由于这个是动态数组,当List的容量达到初始大小后,后继续增加一倍(记得是一倍,也应该可指定,具体的记得不清了,可自己查一下)
你使用new List(16),只是创建了一个空的List的实例,但里面的内容是空的,所以,Count的值没有增加,你可向新建的List实例中添加几个元素,再次增加就可以了。
这样理解下来似乎是addrange只是分配了16个bool实例的空间,并未对其初始化,你说"向新建的List实例中添加几个元素"那还不如直接.add吧.你还是直接写一段addrange初始化16个bool的代码给我看一下吧
追答List intList = new List(10);
Console.WriteLine(intList.Count);
List intList1 = new List();
intList1.Add(1);
intList1.Add(2);
intList.AddRange(intList1);
Console.WriteLine(intList.Count);
运行上面的代码,你就知道是怎么回事了。你理解的还不对。并不是分配了16个实例空间,只是创建了一个List的实例,里面没有内容。
唔,这个我搞懂了,谢谢你.但是一开始我问的问题应该还是没有得到解决,因为
for (int i=0;i(16))肯定是不行的,因为里面没有内容.
到底应该怎么办呢,求代码
for (int i = list1.Count; i list = new List();
list.AddRange(new int[] 1, 2, 3, 4, 5 );
个人建议要对C#基础知识要多多的学习。 参考技术C List<string> dinosaurs =new List<string>();//创建一个string的List集合
Console.WriteLine("\nCapacity: 0", dinosaurs.Capacity);//输出默认容量的大小
for (int i = list1.Count; i <n; i++)
dinosaurs.Add(....);//向集合添加元素
Console.WriteLine();
foreach (string dinosaur in dinosaurs)//打印集合中的元素
Console.WriteLine(dinosaur);
以上是关于C#如何向List<>中添加多个元素?的主要内容,如果未能解决你的问题,请参考以下文章