AとBという2つのリストの要素を互いに比較し、Aに存在しない場合にのみBに存在する要素をAに追加する最も簡単な方法は何ですか?
例として、テイクリストA = {1,2,3}リストB = {3,4,5}
AUB操作の後、リストA = {1,2,3,4,5}が必要です
リストの場合は、 AddRange メソッドも使用できます。
var listB = new List<int>{3, 4, 5};
var listA = new List<int>{1, 2, 3, 4, 5};
listA.AddRange(listB); // listA now has elements of listB also.
新しいリストが必要な場合(および重複を除外する場合)、 nion を使用できます。
var listB = new List<int>{3, 4, 5};
var listA = new List<int>{1, 2, 3, 4, 5};
var listFinal = listA.Union(listB);
新しいリストが必要な場合(および重複を含める場合)、 Concat を使用できます。
var listB = new List<int>{3, 4, 5};
var listA = new List<int>{1, 2, 3, 4, 5};
var listFinal = listA.Concat(listB);
共通のアイテムが必要な場合は、 Intersect を使用できます。
var listB = new List<int>{3, 4, 5};
var listA = new List<int>{1, 2, 3, 4};
var listFinal = listA.Intersect(listB); //3,4
最も簡単な方法は、LINQの Union
メソッドを使用することです。
var aUb = A.Union(B).ToList();
本当に必要なことはこれだけです。
var listB = new List<int>{3, 4, 5};
var listA = new List<int>{1, 2, 3, 4, 5};
var listMerged = listA.Union(listB);