LinkedHashSet<E>.from 构造函数
- Iterable elements
创建一个包含所有 elements 的链接哈希集。
通过 LinkedHashSet<E>() 创建一个链接哈希集,并将 elements 中的每个元素按迭代顺序添加到此集合中。
所有 elements 都应该是 E 的实例。这个 elements 可迭代本身可以有任何元素类型,因此此构造函数可以用作向下转换一个 Set,例如
Set<SuperType> superSet = ...;
Iterable<SuperType> tmp = superSet.where((e) => e is SubType);
Set<SubType> subSet = LinkedHashSet<SubType>.from(tmp);
示例
final numbers = <num>[10, 20, 30];
final setFrom = LinkedHashSet<int>.from(numbers);
print(setFrom); // {10, 20, 30}
实现
factory LinkedHashSet.from(Iterable<dynamic> elements) {
LinkedHashSet<E> result = LinkedHashSet<E>();
for (final element in elements) {
result.add(element as E);
}
return result;
}