How do I convert an array to a hash set ?
string[] BlockedList = BlockList.Split(new char[] { ';' },
StringSplitOptions.RemoveEmptyEntries);
I need to convert this list to a hashset
.
You do not specify what type BlockedList
is, so I will assume it is something that derives from IList
(if meant to say String
where you wrote BlockList
then it would be a string array which derives from IList
).
HashSet
has a constructor that takes an IEnumerable
, so you need merely pass the list into this constructor, as IList
derives from IEnumerable
.
var set = new HashSet(BlockedList);
I'm assuming BlockList is a string (hence the call to Split) which returns a string array.
Just pass the array (which implements IEnumerable) to the constructor of the HashSet:
var hashSet = new HashSet<string>(BlockedList);
Here is an extension method that will generate a HashSet from any IEnumerable:
public static HashSet<T> ToHashSet<T>(this IEnumerable<T> source)
{
return new HashSet<T>(source);
}
To use it with your example above:
var hashSet = BlockedList.ToHashSet();
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With