使用 SelectMany 而不是嵌套循环

给出 2 个列表

var list1 = new List<string> { "a", "b", "c" };
var list2 = new List<string> { "1", "2", "3", "4" };

如果你想输出所有排列,你可以使用嵌套循环

var result = new List<string>();
foreach (var s1 in list1)
    foreach (var s2 in list2)
        result.Add($"{s1}{s2}");

使用 SelectMany,你可以执行相同的操作

var result = list1.SelectMany(x => list2.Select(y => $"{x}{y}", x, y)).ToList();