Set<E>.from 构造函数
- Iterable elements
创建一个包含所有 elements
的 Set。
所有 elements
应该是 E
的实例。此可迭代对象的 elements
可以是任何类型,因此此构造函数可以用作将 Set
纵向下转型,例如
Set<SuperType> superSet = ...;
Set<SubType> subSet =
Set<SubType>.from(superSet.where((e) => e is SubType));
创建的 Set 是一个 LinkedHashSet。作为此类,它将相等(使用 运算符 ==)的元素视为不可区分的,并要求它们有兼容的 对象.hashCode 实现。
该集合与通过 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;