DoubleLinkedQueue<E>.from 构造函数
- Iterable elements
创建一个包含所有 elements
的双端队列。
队列中的元素顺序就像使用 addLast 按照由 elements
.iterator 提供的顺序添加一样。
所有 elements
应该是 E
的实例。因此,这个可迭代对象自己可以有任何元素类型,所以这个构造函数可以用来向下转型一个 Queue》,例如
Queue<SuperType> superQueue = ...;
Queue<SubType> subQueue =
DoubleLinkedQueue<SubType>.from(superQueue.whereType<SubType>());
实现
factory DoubleLinkedQueue.from(Iterable<dynamic> elements) {
DoubleLinkedQueue<E> list = DoubleLinkedQueue<E>();
for (final e in elements) {
list.addLast(e as E);
}
return list;
}