Queue隊列就是先進先出。它並沒有實現 IList,ICollection。所以它不能按索引訪問元素,不能使用Add和Remove。下面是 Queue的一些方法和屬性
Enqueue():在隊列的末端添加元素
Dequeue():在隊列的頭部讀取和刪除一個元素,注意,這里讀取元素的同時也刪除了這個元素。如果隊列中不再有任何元素。就拋出異常
Peek():在隊列的頭讀取一個元素,但是不刪除它
Count:返回隊列中的元素個數
TrimExcess():重新設置隊列的容量,因為調用Dequeue方法讀取刪除元素后不會重新設置隊列的容量。
Contains():確定某個元素是否在隊列中
CopyTo():把元素隊列復制到一個已有的數組中
ToArray():返回一個包含元素的新數組
private void button_測試Queue_Click(object sender, EventArgs e) { string[] cars = new string[]{"寶馬","奔馳","奧迪","東風","勞斯萊斯"}; Console.WriteLine("開始入隊列"); Queue<string> que = new Queue<string>(); foreach (string str in cars) { que.Enqueue(str); Console.WriteLine("入隊列-{0}",str); } Console.WriteLine(); //打印隊列 PrintQueue(que); Console.WriteLine(); Console.WriteLine("開始出隊列"); while (que.Count > 0) { string str = que.Dequeue(); Console.WriteLine("出隊列-{0}", str); } } private void PrintQueue(Queue<string> list) { Console.WriteLine("開始打印隊列"); foreach (string str in list) { Console.WriteLine(str); } }