, 나는이 코드를 사용할 수 있습니까? 그리고 중복없이? 교차 할 수 있습니까?intersec가 아닌 요소를 선택하는 방법은 무엇입니까? 나는 일반적인하지 않은 요소를 원하는 경우에, 그러나</p> <pre><code>var listC = listA.Intersect(listB); </code></pre> <p>: 나는이 목록을 가지고 있고이 두 목록에 공통되는 요소를 원하는 경우
감사합니다.
, 나는이 코드를 사용할 수 있습니까? 그리고 중복없이? 교차 할 수 있습니까?intersec가 아닌 요소를 선택하는 방법은 무엇입니까? 나는 일반적인하지 않은 요소를 원하는 경우에, 그러나</p> <pre><code>var listC = listA.Intersect(listB); </code></pre> <p>: 나는이 목록을 가지고 있고이 두 목록에 공통되는 요소를 원하는 경우
감사합니다.
네, 가능합니다. Enumerable.Except이라고합니다.
사용이 :
이var result = listA.Except(listB); //maybe a .ToList() at the end,
//or passing an IEqualityComparer<T> if you want a different equality comparison.
나도 listA
에없는 그 listB
에서 항목을 포함 지금까지 답변을하지 않습니다. 에게 중 하나 목록에있는 아이템을 얻을 수 있지만 모두 목록입니다하려면
listA.Union(listB).Except(listA.Intersect(listB));
가장 효율적인 대안으로
var set = new HashSet<T>(listA);
set.SymmetricExceptWith(listB);
, 당신은 또한'listA.Except을 (할 수 listB) .Union (listB.Except (listA)) ' –
+1, 그것은 내 것보다 나은 대답입니다. –