C#内置队列类Queue用法实例

本文实例讲述了C#内置队列类Queue用法。分享给大家供大家参考。具体分析如下:

这里详细演示了C#内置的队列如何进行添加,移除等功能。

using System;
using System.Collections.Generic;
class Example
{
 public static void Main()
 {
  Queue<string> numbers = new Queue<string>();
  numbers.Enqueue("one");
  numbers.Enqueue("two");
  numbers.Enqueue("three");
  numbers.Enqueue("four");
  numbers.Enqueue("five");
  // A queue can be enumerated without disturbing its contents.
  foreach( string number in numbers )
  {
   Console.WriteLine(number);
  }
  Console.WriteLine("\nDequeuing '{0}'", numbers.Dequeue());
  Console.WriteLine("Peek at next item to dequeue: {0}", 
   numbers.Peek());
  Console.WriteLine("Dequeuing '{0}'", numbers.Dequeue());
  // Create a copy of the queue, using the ToArray method and the
  // constructor that accepts an IEnumerable<T>.
  Queue<string> queueCopy = new Queue<string>(numbers.ToArray());
  Console.WriteLine("\nContents of the first copy:");
  foreach( string number in queueCopy )
  {
   Console.WriteLine(number);
  }
  // Create an array twice the size of the queue and copy the
  // elements of the queue, starting at the middle of the 
  // array. 
  string[] array2 = new string[numbers.Count * 2];
  numbers.CopyTo(array2, numbers.Count);
  // Create a second queue, using the constructor that accepts an
  // IEnumerable(Of T).
  Queue<string> queueCopy2 = new Queue<string>(array2);
  Console.WriteLine("\nContents of the second copy, with duplicates and nulls:");
  foreach( string number in queueCopy2 )
  {
   Console.WriteLine(number);
  }
  Console.WriteLine("\nqueueCopy.Contains(\"four\") = {0}", 
   queueCopy.Contains("four"));
  Console.WriteLine("\nqueueCopy.Clear()");
  queueCopy.Clear();
  Console.WriteLine("\nqueueCopy.Count = {0}", queueCopy.Count);
 }
}
/* This code example produces the following output:
one
two
three
four
five
Dequeuing 'one'
Peek at next item to dequeue: two
Dequeuing 'two'
Contents of the copy:
three
four
five
Contents of the second copy, with duplicates and nulls:
three
four
five
queueCopy.Contains("four") = True
queueCopy.Clear()
queueCopy.Count = 0
 */

希望本文所述对大家的C#程序设计有所帮助。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。