gpt4 book ai didi

c# - 使用 LINQ 使用相同的值填充 List

转载 作者:IT王子 更新时间:2023-10-29 04:25:36 24 4
gpt4 key购买 nike

我想填充 List<string>在指定的次数内使用相同的字符串值。

在 C# 中它是:

List<string> myList = new List<string>();
for (int i = 0; i < 50; ++i)
{
myList.Add("myString");
}

是否可以使用 LINQ 执行此操作?

最佳答案

是的,使用 Enumerable.Repeat :

var myList = Enumerable.Repeat("myString", 50).ToList();

或者这个:

var myList = new List<string>(Enumerable.Repeat("myString", 50));

如果你有一个现有的列表,你想添加这些元素,使用这个:

myList.AddRange(Enumerable.Repeat("myString", 50));

请注意,这本身并不完全是 LINQ,但它使用与 LINQ 一起添加的扩展方法来支持新语法。 只是 LINQ(即“from ... select”语法)有点不同,那么我会这样做:

var myList = (from idx in Enumerable.Range(0, 50) select "myString").ToList();

但是,我不会实际上这样做,而是使用Enumerable 的方法。

此外,如果您想创建不同的 字符串,具体取决于您添加的是第一个、第二个、第三个等项目,您可以使用Enumerable.Range。相反:

var myList = Enumerable.Range(0, 50).Select(idx => "myString#" + idx).ToList();

将创建一个包含字符串 myString#0myString#1myString#2、...

的列表

关于c# - 使用 LINQ 使用相同的值填充 List<string>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16935010/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com