我必须在这里重新发明轮子 - 但我已经搜索过,我找不到任何相同的东西......
这是我的代码,用于创建具有默认构造函数的零个或多个对象的序列:
public static IEnumerable<T> CreateSequence<T>(int n) where T: new()
{
for (int i = 0; i < n; ++i)
{
yield return new T();
}
}
我的问题很简单:我应该使用Linq等效的吗?
答案 0 :(得分:8)
试试这个:
Enumerable.Range(1,count).Select(_ => new T());
Enumerable.Range
将为您提供指定范围内的当前数字作为参数,但您可以忽略它(在示例中命名为_
)。
答案 1 :(得分:0)
是的,有:var items = Enumerable.Repeat(new YourClass(), 10);