【发布时间】:2017-11-23 20:56:10
【问题描述】:
我有一个相当新的问题:
这样做
var emptyList = Enumerable.Repeat(Enumerable.Empty<int>(), 1).ToList();
var nonEmptyList = new List<int> { 1 };
var joinedList = emptyList.Select(x => x.Concat(nonEmptyList)).ToList();
返回一个非空列表
但是这会返回一个空列表
var emptyList = new List<List<int>>();
var nonEmptyList = new List<int> { 1 };
var joinedList = emptyList.Select(x => x.Concat(nonEmptyList)).ToList();
当所选项目本身是空列表时,Linq 如何将 empty 列表中的项目与 nonEmpty 列表连接起来?然后为什么我在第二个示例中尝试使用新列表时它不起作用?
谢谢
【问题讨论】:
-
您的第一个“emptyList”是一个包含一个空列表(一个元素)的可枚举。您的第二个“emptyList”是一个空列表(零元素)。看到这里,你应该可以看到它是如何到达输出的。