Dart 程式設計 - 集合 Queue



佇列是一種可以在兩端進行操作的集合。當您想要構建一個先進先出 (FIFO) 集合時,佇列很有用。簡單來說,佇列從一端插入資料,從另一端刪除資料。值按照插入順序刪除/讀取。

語法:建立佇列

Identifier = new Queue()

add() 函式可用於將值插入佇列。此函式將指定的值插入到佇列的末尾。以下示例說明了這一點。

示例

import 'dart:collection'; 
void main() { 
   Queue queue = new Queue(); 
   print("Default implementation ${queue.runtimeType}"); 
   queue.add(10); 
   queue.add(20); 
   queue.add(30); 
   queue.add(40); 
   
   for(var no in queue){ 
      print(no); 
   } 
}      

它應該產生以下輸出 -

Default implementation ListQueue
10 
20 
30 
40 

向佇列新增多個值

addAll() 函式可以一次將多個值新增到佇列中。此函式採用一個可迭代的值列表。

示例

import 'dart:collection'; 
void main() { 
   Queue queue = new Queue(); 
   print("Default implementation ${queue.runtimeType}"); 
   queue.addAll([10,12,13,14]); 
   for(var no in queue){ 
      print(no); 
   } 
}

它應該產生以下輸出 -

Default implementation ListQueue 
10 
12 
13 
14 

在佇列的開頭和結尾新增值

addFirst() 方法將指定的值新增到佇列的開頭。此函式傳遞一個表示要新增的值的物件。addLast() 函式將指定的物件新增到佇列的末尾。

示例:addFirst()

以下示例顯示瞭如何使用 addFirst() 方法在佇列的開頭新增值 -

import 'dart:collection'; 
void main() { 
   Queue numQ = new Queue(); 
   numQ.addAll([100,200,300]); 
   print("Printing Q.. ${numQ}");
   numQ.addFirst(400); 
   print("Printing Q.. ${numQ}"); 
}   

它應該產生以下輸出 -

Printing Q.. {100, 200, 300} 
Printing Q.. {400, 100, 200, 300}

示例:addLast()

以下示例顯示瞭如何使用 addLast() 方法在佇列的末尾新增值 -

import 'dart:collection'; 
void main() { 
   Queue numQ = new Queue(); 
   numQ.addAll([100,200,300]); 
   print("Printing Q.. ${numQ}");  
   numQ.addLast(400); 
   print("Printing Q.. ${numQ}"); 
} 

它應該產生以下輸出 -

Printing Q.. {100, 200, 300} 
Printing Q.. {100, 200, 300, 400} 
dart_programming_collection.htm
廣告