1
我将如何获取List<string>
中出现的所有字符串,除了出现在List<string[]>
之外的字符串。我能得到这个,如果他们这样做获取列表<String>中的字符串,不包括列表中的字符串<String[]>
IEnumerable<string> list3 = List1.Except(List2);
都List<string>
工作,但我无法弄清楚如何到位的list2
我将如何获取List<string>
中出现的所有字符串,除了出现在List<string[]>
之外的字符串。我能得到这个,如果他们这样做获取列表<String>中的字符串,不包括列表中的字符串<String[]>
IEnumerable<string> list3 = List1.Except(List2);
都List<string>
工作,但我无法弄清楚如何到位的list2
使用List<string[0]>
您应该使用SelectMany
拼合List<string[]>
成一个单一的IEnumerable<string>
做。假设list2
是List<string[]>
类型的,你可以这样做:
var list3 = list1.Except(list2.SelectMany(x=>x));
但是,如果你只是想在List<string[]>
第一string[]
然后,假设有在列表中的至少一个项目,你可以这样做:
var list3 = list1.Except(list2.First());
附加list2.SelectMany(x=>x)
相当于:
var flattenedList2 = from x in list2
from y in x
select x;
同意,打我吧:) – 2011-01-27 22:16:07