Set<E>.from constructor Null safety

  1. Iterable elements

Creates a Set that contains all elements.

All the elements should be instances of E. The elements iterable itself can have any type, so this constructor can be used to down-cast a Set, for example as:

Set<SuperType> superSet = ...;
Set<SubType> subSet =
    Set<SubType>.from(superSet.where((e) => e is SubType));

The created Set is a LinkedHashSet. As such, it considers elements that are equal (using operator ==) to be indistinguishable, and requires them to have a compatible Object.hashCode implementation.

The set is equivalent to one created by LinkedHashSet<E>.from(elements).

final numbers = <num>{10, 20, 30};
final setFrom = Set<int>.from(numbers);
print(setFrom); // {10, 20, 30}


factory Set.from(Iterable elements) = LinkedHashSet<E>.from;