C# 用于创建独立对象序列的Linq方法?
我必须在这里重新发明轮子-但我已经搜索过了,我找不到完全相同的东西 以下是我的代码,用于创建具有默认构造函数的零个或多个对象序列:C# 用于创建独立对象序列的Linq方法?,c#,linq,C#,Linq,我必须在这里重新发明轮子-但我已经搜索过了,我找不到完全相同的东西 以下是我的代码,用于创建具有默认构造函数的零个或多个对象序列: public static IEnumerable<T> CreateSequence<T>(int n) where T: new() { for (int i = 0; i < n; ++i) { yield return new T(); } } 公共静态IEnumerable Creat
public static IEnumerable<T> CreateSequence<T>(int n) where T: new()
{
for (int i = 0; i < n; ++i)
{
yield return new T();
}
}
公共静态IEnumerable CreateSequence(int n),其中T:new()
{
对于(int i=0;i
我的问题很简单:我应该使用Linq等效物吗?试试这个:
Enumerable.Range(1,count).Select(_ => new T());
Enumerable.Range
将指定范围中的当前数字作为参数提供给您,但您可以忽略它(在示例中命名为。是:var items=Enumerable.Repeat(new YourClass(),10)代码>这会将同一个项目返回10次,而不是10个不同的项目。首先也会想到这一点,但这会创建一个新项目,并一直使用该项目,他需要单独的对象。非常感谢。我对此进行了计时,并且(在发布版本中)这比我的手动方法要快得多。