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;
}