如何使用将使用相同构造函数的相同元素初始化引用类型列表?
How can i initialize List of reference type with same elements that will use same constructor?
我想用精确大小初始化 List<File>
,并且所有元素都应使用带参数的构造函数创建。
这是文件 class:
public class File
{
public int Value;
public File(int value)
{
Value = value;
}
}
我无法更改此 class。
我尝试使用 Files = new List<File>(new File[filesCount])
但这样每个元素都是空的但至少我得到了正确的列表大小。然后我使用 Files.Foreach(x => x = new File(0))
并且正如预期的那样它不起作用,因为我们无法更改迭代时获得的对象。
在一天结束时,我想要一个 List<File>
,其中所有项目都是 Files
并且 Value
为 0
您可以使用 System.Linq Enumerable
class:
var Files = Enumerable.Repeat(new File(0), filesCount).ToList();
我想用精确大小初始化 List<File>
,并且所有元素都应使用带参数的构造函数创建。
这是文件 class:
public class File
{
public int Value;
public File(int value)
{
Value = value;
}
}
我无法更改此 class。
我尝试使用 Files = new List<File>(new File[filesCount])
但这样每个元素都是空的但至少我得到了正确的列表大小。然后我使用 Files.Foreach(x => x = new File(0))
并且正如预期的那样它不起作用,因为我们无法更改迭代时获得的对象。
在一天结束时,我想要一个 List<File>
,其中所有项目都是 Files
并且 Value
为 0
您可以使用 System.Linq Enumerable
class:
var Files = Enumerable.Repeat(new File(0), filesCount).ToList();