Stack的本质
Stack(栈)是C#为我们封装好的一个类,
Stack可以存储object任意类型对象,
它的本质是object[]数组,知识封装了特殊的存储规则。
Stack是栈存储容器,是一种先进后出的数据结构,
先存入的数据后获取,后存入的数据先获取,
栈是先进后出。
声明
需要引用命名空间using System.Collections;
Stack stack = new Stack();
增取查改
增(压栈):
向栈中添加元素 Push方法
stack.Push();
取
移除并获取栈顶元素 Pop方法
object v =stack.Pop();
查
查看栈顶元素 Peek方法
v =stack.Peek();
判断元素是否存在 Contains方法
stack.Contains()
获取元素数量 Count方法
stack.Count
改
清空容器 Clear方法
stack.Clear
遍历
由于栈无法通过索引获取指定位置元素,因为无法遍历。我们只有通过循环弹栈来获取其中的元素,但是没法遍历访问。
装箱拆箱
由于用万物之父来存储数据,自然存在装箱拆箱。当往其中进行值类型存储时就是在装箱,当将值类型对象取出来转换使用时,就存在拆箱
特点
先进后出
存在装箱拆箱
存储任意类型
无法遍历查看元素
无法获取指定位置元素
只能查看获取栈顶元素
总结
常用方法
压栈:Push
弹栈:Pop
查看栈顶:Peek
查看元素存在:Contains
数量:Count
清空:Clear
注意:
先进后出
装箱拆箱
无法遍历
无法访问指定元素