dart:collection
库中ListQueue
类的用法介绍如下。
基于列表的 Queue 。
保持元素的循环缓冲区,并在填满时增长到更大的缓冲区。这保证了恒定时间的查看和删除操作,以及摊销的恒定时间添加操作。
该结构对于任何队列或堆栈使用都是有效的。
例子:
final queue = ListQueue<int>();
要将对象添加到队列中,请使用 add 、 addAll 、 addFirst 或 addLast 。
queue.add(5);
queue.addFirst(0);
queue.addLast(10);
queue.addAll([1, 2, 3]);
print(queue); // {0, 5, 10, 1, 2, 3}
要检查队列是否为空,请使用 isEmpty 或 isNotEmpty 。要查找队列条目的数量,请使用 length 。
final isEmpty = queue.isEmpty; // false
final queueSize = queue.length; // 6
要从队列中获取第一个或最后一个项目,请使用 first 或 last 。
final first = queue.first; // 0
final last = queue.last; // 3
要使用索引获取项目值,请使用 elementAt 。
final itemAt = queue.elementAt(2); // 10
要将队列转换为列表,请调用 toList 。
final numbers = queue.toList();
print(numbers); // [0, 5, 10, 1, 2, 3]
要从队列中删除项目,请调用 remove 、 removeFirst 或 removeLast 。
queue.remove(10);
queue.removeFirst();
queue.removeLast();
print(queue); // {5, 1, 2}
要同时删除多个元素,请使用 removeWhere 。
queue.removeWhere((element) => element == 1);
print(queue); // {5, 2}
要删除此队列中不满足条件的所有元素,请使用 retainWhere 。
queue.retainWhere((element) => element < 4);
print(queue); // {2}
要删除所有项目并清空集合,请使用 clear 。
queue.clear();
print(queue.isEmpty); // true
print(queue); // {}
- 继承
- 实现的类型
-
Queue<
E> - 可用的扩展
相关用法
- Dart ListQueue.of用法及代码示例
- Dart ListQueue.contains用法及代码示例
- Dart ListQueue.lastWhere用法及代码示例
- Dart ListQueue.firstWhere用法及代码示例
- Dart ListQueue.join用法及代码示例
- Dart ListQueue.from用法及代码示例
- Dart ListQueue.fold用法及代码示例
- Dart ListQueue.take用法及代码示例
- Dart ListQueue.reduce用法及代码示例
- Dart ListQueue.singleWhere用法及代码示例
- Dart ListQueue.any用法及代码示例
- Dart ListQueue.toList用法及代码示例
- Dart ListQueue.where用法及代码示例
- Dart ListQueue.toSet用法及代码示例
- Dart ListQueue.map用法及代码示例
- Dart ListQueue.skipWhile用法及代码示例
- Dart ListQueue.isEmpty用法及代码示例
- Dart ListQueue.skip用法及代码示例
- Dart ListQueue.every用法及代码示例
- Dart ListQueue.takeWhile用法及代码示例
- Dart ListQueue.elementAt用法及代码示例
- Dart ListQueue.forEach用法及代码示例
- Dart ListMixin.expand用法及代码示例
- Dart List.first用法及代码示例
- Dart List.sort用法及代码示例
注:本文由纯净天空筛选整理自dart.dev大神的英文原创作品 ListQueue<E> class。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。