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