una objetos llenar listas lista juntar intercalar crear concatenar c# .net linq list union

llenar - lista de objetos c#



La forma más simple de formar una unión de dos listas (4)

Creo que esto es todo lo que necesitas hacer:

var listB = new List<int>{3, 4, 5}; var listA = new List<int>{1, 2, 3, 4, 5}; var listMerged = listA.Union(listB);

¿Cuál es la forma más fácil de comparar los elementos de dos listas, decir A y B entre sí, y agregar los elementos que están presentes en B a A solo si no están presentes en A?

Para ilustrar, Take list A = {1,2,3} list B = {3,4,5}

Entonces después de la operación AUB quiero la lista A = {1,2,3,4,5}


La forma más fácil es usar el método de Union de LINQ:

var aUb = A.Union(B).ToList();


Si es una lista, también puede usar el método 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.

Si necesita una nueva lista (y excluye el duplicado), puede usar Union

var listB = new List<int>{3, 4, 5}; var listA = new List<int>{1, 2, 3, 4, 5}; var listFinal = listA.Union(listB);

Si necesita una nueva lista (e incluya el duplicado), puede usar Concat

var listB = new List<int>{3, 4, 5}; var listA = new List<int>{1, 2, 3, 4, 5}; var listFinal = listA.Concat(listB);

Si necesita elementos comunes, puede usar 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


Usando la Union LINQ

Enumerable.Union(ListA,ListB);

o

ListA.Union(ListB);