Is there an AddRange equivalent for a HashSet in C#

Stefanos Kargas picture Stefanos Kargas · Mar 7, 2013 · Viewed 78.3k times · Source

With a list you can do:

list.AddRange(otherCollection);

There is no add range method in a HashSet. What is the best way to add another ICollection to a HashSet?

Answer

quetzalcoatl picture quetzalcoatl · Mar 7, 2013

For HashSet<T>, the name is UnionWith.

This is to indicate the distinct way the HashSet works. You cannot safely Add a set of random elements to it like in Collections, some elements may naturally evaporate.

I think that UnionWith takes its name after "merging with another HashSet", however, there's an overload for IEnumerable<T> too.