说明:Stack(堆栈)作为一种集合类型,适合于处理应用程序使用完后就删除的临时数据项。Queue(队列)与Stack用法相似,唯一的区别是Queue以先进先出的结构创建集合。
Stack用法示例:
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;
namespace Stack2
{
class Program
{
static void Main(string[] args)
{
Stack alphabet = new Stack(); //实例化一个堆栈!
alphabet.Push("A"); //放入一个值!
alphabet.Push("B");
alphabet.Push("C");
Console.Write("第一个迭代: ");
foreach (string item in alphabet) //迭代堆栈中的值!
{
Console.Write(item); //输出迭代的值,输出"A","B","C"!
}
Console.WriteLine("\n从堆栈中弹出一个值: " + alphabet.Pop().ToString()); //从堆栈中弹出一个值,根据后进先出原则,先弹出"C"!
Console.Write("第二个迭代: ");
foreach (string item in alphabet) //再次迭代堆栈里的值!
{
Console.Write(item); //输出迭代的值,这时为"A","B"!
}
Console.ReadLine();
}
}
}
Queue(队列)示例代码:
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;
namespace Stack2
{
class Program
{
static void Main(string[] args)
{
Queue alphabet = new Queue(); //实例化一个堆栈!
alphabet.Enqueue("A"); //放入一个值!
alphabet.Enqueue("B");
alphabet.Enqueue("C");
Console.Write("第一个迭代: ");
foreach (string item in alphabet) //迭代堆栈中的值!
{
Console.Write(item); //输出迭代的值,输出"A","B","C"!
}
Console.WriteLine("\n从堆栈中弹出一个值: " + alphabet.Dequeue().ToString()); //从队列中弹出一个值,根据先进先出原则,先弹出"A"!
Console.Write("第二个迭代: ");
foreach (string item in alphabet) //再次迭代堆栈里的值!
{
Console.Write(item); //输出迭代的值,这时为"B","C"!
}
Console.ReadLine();
}
}
}
浙公网安备 33010602011771号