0

我有一个 POCO 对象,根据输入的数字,我想将此对象复制到此对象类型的列表中。除了使用循环之外,还有其他优雅的方法吗?

4

1 回答 1

11

简短的回答:

list.AddRange(Enumerable.Repeat(item, count));

例子:

var list = new List<int>();

list.Add(0); // 0
list.Add(1); // 0, 1
list.Add(2); // 0, 1, 2

var item = 5;
var count = 3;

list.AddRange(Enumerable.Repeat(item, count)); // 0, 1, 2, 5, 5, 5

笔记:

对于参考对象,这将添加相同的对象 x 次。如果要创建 x 次新对象并添加,可以执行以下操作:

list.AddRange(Enumerable.Repeat(0, count).Select(x => new MyObject()));
于 2012-06-21T01:59:07.670 回答