2017-02-02 4 views
-3

Ich habe 2 Listen sagen list1 und list2. WieVergleichen von zwei Listen unterschiedlichen Wert C#

List<int> list1 = {1,2,3}; 
List<int> list2 = {3,4}; 

jetzt will ich meine resultierende Liste sein wie

{1,2,3,4} 

ich diese

result= list1.Union(list2).ToList(); 

versucht haben, aber es gibt wie führen

{1,2,3,3,4} 

kann jemand helfen ich damit?

+0

Bitte senden Sie uns eine [MCVE], ich das Verhalten nicht reproduzieren können Sie beschreiben, was Sie beschreiben, ist das Ergebnis des Aufrufs '.Concat', nicht' .Union' Das Verhalten von '.Union' ist genau das, was du sagst. Daher müssen Sie ein [mcve] veröffentlichen, damit wir genau sehen können, was Sie tun. –

+0

Möglich, dass Sie Listen von Objekten haben, die 'IComparable' nicht implementieren –

+1

Ihr Code hat' {1,2,3,4} 'zurückgegeben, als ich ihn getestet habe. Machst du das wirklich? – Guy

Antwort

2

Es ist ganz einfach:

var result= list1.Union(list2).Distinct().ToList(); 
+1

In dem gegebenen Beispiel sollte '.Distinct()' nicht benötigt werden, da das gewünschte Verhalten genau das ist, was '.Union' tut. –

Verwandte Themen