A と B という 2 つのリストの要素を互いに比較し、B に存在する要素を A に存在しない場合にのみ 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.
新しいリストが必要な場合(および重複を除外する場合)、Unionを使用できます
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);