// list 排列组合,常见应用:可以输出多少个姓名组合 List<List<string>> list = new List<List<string>>(); list.Add(new List<string>() { "Zhang", "Wang", "Li" }); list.Add(new List<string>() { "Zhong", "Xiao" }); list.Add(new List<string>() { "Jun", "Lai" }); list.Add(new List<string>() { "1", "2", "3" }); var array = list.Aggregate((m, n) => m.SelectMany(t1 => n.Select(t2 => t1 + t2).ToList()).ToList()).ToList();