当前位置导航:炫浪网>>网络学院>>编程开发>>Visual C#教程

C#使用相应的泛型版本替换Stack和Queue

问题

您希望通过将所有Stack和Queue对象替换为相应的泛型版本以提高应用程序的效率,并使得代码更易于使用。当结构体或其他值类型存储在这些数据结构中时,会导致装箱/拆箱操作,这时就需要这么做。

解决方案

使用System.Collections.Generic.Stack和System.Collections.Generic.Queue对象来替换现有的System.Collections.Stack和System.Collections.Queue对象。

这里有一个简单地使用System.Collections.Queue对象的简单例子:

publicstaticvoidUseNonGenericQueue()
{
//创建一个非泛型队列对象
QueuenumericQueue=newQueue();
//进队(导致装箱操作).
numericQueue.Enqueue(1);
numericQueue.Enqueue(2);
numericQueue.Enqueue(3);
//出队并显示项(导致拆箱操作)
Console.WriteLine(numericQueue.Dequeue());
Console.WriteLine(numericQueue.Dequeue());
Console.WriteLine(numericQueue.Dequeue().ToString());
}

相关内容
赞助商链接