HashSet<E>.from 构造函数
- Iterable elements
创建包含所有 elements
的哈希集合。
通过 HashSet<E>()
创建哈希集合,并将所有给定的 elements
添加到集合中。元素按顺序添加。如果 elements
包含两个相等的条目,但不是同一个对象,则结果是集合中的第一个。
所有 elements
应该是 E
的实例。elements
可迭代本身可以有任何元素类型,因此可以使用此构造函数将 Set
进行下转型,例如
Set<SuperType> superSet = ...;
Set<SubType> subSet =
HashSet<SubType>.from(superSet.whereType<SubType>());
示例
final numbers = <num>[10, 20, 30];
final hashSetFrom = HashSet<int>.from(numbers);
print(hashSetFrom); // fx {20, 10, 30}
实现
factory HashSet.from(Iterable<dynamic> elements) {
HashSet<E> result = HashSet<E>();
for (final e in elements) {
result.add(e as E);
}
return result;
}