Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/EmptyTag/148.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用LINQ从列表列表中输出由单个索引构造的整数列表?_C#_Linq - Fatal编程技术网

C# 如何使用LINQ从列表列表中输出由单个索引构造的整数列表?

C# 如何使用LINQ从列表列表中输出由单个索引构造的整数列表?,c#,linq,C#,Linq,我有一个包含一些数字的列表。我希望在每个列表中构造第二个索引元素的输出列表。我可以使用普通循环实现这一点,但我想知道如何使用LINQ实现同样的事情 我现在的例子是: List<int> output = new List<int>(); foreach (List<int> list in Data) output.Add(list[2]); List output=新建List(); foreach(数据中的列表) output.Add(列表[2]

我有一个包含一些数字的列表。我希望在每个列表中构造第二个索引元素的输出列表。我可以使用普通循环实现这一点,但我想知道如何使用LINQ实现同样的事情

我现在的例子是:

List<int> output = new List<int>();
foreach (List<int> list in Data)
    output.Add(list[2]);
List output=新建List();
foreach(数据中的列表)
output.Add(列表[2]);

var输出=数据。选择(list=>list[2])。ToList()


这是直译。我认为它比手动编写的循环要好得多,因为它的冗余度更低,而且组合性也更好。

var output=Data.Select(list=>list[2]).ToList()


这是直译。我认为它比手动编写的循环要好得多,因为它的冗余度更低,而且组成也更好。

您可以使用
。选择
。我还将进行检查,以确保预期的数字实际存在:

var results = Data.Where(d => d.Count > 2).Select(d => d.list[2]);

您可以使用
。选择
。我还将进行检查,以确保预期的数字实际存在:

var results = Data.Where(d => d.Count > 2).Select(d => d.list[2]);

该检查最好在有异常的情况下进行,这样可能的bug就不会被悄悄地吞没。最终目标是正确性,而不是例外的自由。非常正确。取决于需求,我猜您必须使用
Count
,因为数据包含
List
项,所以最好在异常情况下进行检查,以避免潜在的bug被悄悄吞没。最终目标是正确性,而不是例外的自由。非常正确。取决于需求,我猜您必须使用
Count
,因为数据包含
List
itemsThanks!我喜欢LINQ看起来多么强大,但我发现它很难学习。请查看101个LINQ示例。LINQ现在是一项基本技能。谢谢!我喜欢LINQ看起来多么强大,但我发现它很难学习。请查看101个LINQ示例。LINQ是当今的一项基本技能。