简介
集合,后进先出。
构造函数
Stack<>()
不使用参数创建stack对象。
Stack<>(ICollection col)
使用数组col来创建stack对象。
常用属性
Count
获取stack中包含的元素数。
static void Main(string[] args)
{
string[] strArray = { "monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday" };
Stack<string> strStack = new Stack<string>(strArray);
Console.WriteLine("strStack对象的元素数为:" + strStack.Count);
Console.ReadKey();
}
运行结果:
strStack对象的元素数为:7
常用方法
stack类的常用方法与Queue大多相同,这里只挑一些不同的方法来说一下。
Pop()
删除并返回stack顶部的对象。
static void Main(string[] args)
{
string[] strArray = { "monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday" };
Stack<string> strStack = new Stack<string>(strArray);
string stackPop = strStack.Pop();
Console.WriteLine("stackPop=" + stackPop);
Console.WriteLine("----------------------------");
Console.WriteLine("stack剩下的元素有:");
foreach (var item in strStack)
{
Console.WriteLine(item);
}
Console.ReadKey();
}
运行结果:
stackPop=sunday
----------------------------
stack剩下的元素有:
saturday
friday
thursday
wednesday
tuesday
monday
Push(object obj)
在stack的顶部插入一个对象obj。
static void Main(string[] args)
{
string[] strArray = { "monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday" };
Stack<string> strStack = new Stack<string>(strArray);
strStack.Push("hello");
Console.WriteLine("----------------------------");
Console.WriteLine("stack剩下的元素有:");
foreach (var item in strStack)
{
Console.WriteLine(item);
}
Console.ReadKey();
}
运行结果:
----------------------------
stack剩下的元素有:
hello
sunday
saturday
friday
thursday
wednesday
tuesday
monday