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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。