我有一个List<List<String>>,其中包含
{ {"A" , "B" },
{"C" , "D" }
}
Run Code Online (Sandbox Code Playgroud)
我需要将所有内部列表合并到另一个列表中
所以结果List<String>将包含
{"A","B","C","D"}
Run Code Online (Sandbox Code Playgroud)
现在我正在使用for loop这样做
有没有办法做这个使用LINQ或Lambda Expression.
请帮我这样做.
提前致谢.
JR *_*aid 14
List<List<string>> collections = new List<List<string>>()
{
new List<string>(){"A" , "B" },
new List<string>() {"C" , "D" }
};
var list = collections.SelectMany(x => x).ToList();
Run Code Online (Sandbox Code Playgroud)
SelectMany构建一个表达式树,在评估时将列表列表展平为单个组合成员列表.
ToList强制要求计算表达式树,并生成List.
如果你想消除重复,你可以在调用'ToList()之前添加一个Distinct调用
Ale*_*ran 13
不完全是一个联盟,但你可以试试这个
YourList.SelectMany(l=>l).Distinct()
Run Code Online (Sandbox Code Playgroud)