using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
//队列的特点就是先进先出
Queue queue = new Queue();
queue.Enqueue("张三"); //入队 将对象添加到 System.Collections.Generic.Queue 的结尾处。
queue.Enqueue("李四");
queue.Enqueue("王五");
int queueCount = queue.Count(); //返回序列中元素的数量
string name = queue.Dequeue(); //出队 把队首的元素移除,并将这移除的元素返回。
Console.WriteLine(name); //输出“张三”
name = queue.Dequeue(); //因为“张三”已经被移除了。所以现在是“李四”是在队首了
Console.WriteLine(name); //输出“李四”
name = queue.Dequeue(); //因为“李四”也被移除了,所以队列中就只剩下王五了。
Console.WriteLine(name); //输出“王五”
//------------------------------------------------------------
//栈的特点就是先进后出(了解下就可以了,用的不多)
Stack stack = new Stack();
stack.Push("张三"); //入栈, 将对象插入 System.Collections.Generic.Stack 的顶部。
stack.Push("李四");
stack.Push("王五");
int stackCount= stack.Count(); //返回栈中的数量
string name1 = stack.Pop(); //出栈。把栈首的元素移除,并将移除的元素返回。
Console.WriteLine(name); //输出:“王五”
name1 = stack.Pop();
Console.WriteLine(name1);//输出:“李四”
name1 = stack.Pop();
Console.WriteLine(name1);//输出:“张三”
//name1 = stack.Peek(); //这是返回栈首的对象,但是不将它移除
Console.ReadKey();
}
}
}