que net mvc funciona conjuntos concepto como asp c# collections hashset addrange

c# - net - hashset concepto



¿Hay un equivalente de AddRange para un HashSet en C# (2)

Con una lista puedes hacer:

list.AddRange(otherCollection);

No hay un método para agregar rango en un HashSet . ¿Cuál es la mejor manera de agregar otra colección a un HashSet?


Esta es una forma:

public static class Extensions { public static bool AddRange<T>(this HashSet<T> @this, IEnumerable<T> items) { bool allAdded = true; foreach (T item in items) { allAdded &= @this.Add(item); } return allAdded; } }


Para HashSet<T> , el nombre es UnionWith .

Esto es para indicar la forma HashSet funciona HashSet . No puede agregarle de forma segura un conjunto de elementos aleatorios como en Collections , algunos elementos pueden evaporarse naturalmente.

Creo que UnionWith toma su nombre después de "fusionarse con otro HashSet ", sin embargo, también hay una sobrecarga para IEnumerable<T> .