c#stack

stack概念

Stack 是c#封装好的类

本质是object[]数组,只是封装了特殊的存储规则

先进后出

cs 复制代码
Stack stack = new Stack();

增取删改

压栈

cs 复制代码
stack.Push(1);
stack.Push(1.2f);

弹栈

cs 复制代码
object v = stack.Pop();

把栈顶的取出来看一看

cs 复制代码
 v = stack.Peek();
 v = stack.Pop();

查看元素是否在栈中

cs 复制代码
if (stack.Contains(1.2f))
{
    Console.WriteLine("存在");
}

改变

无法改变其中的元素,只能压和弹

实在要改,只有清空

cs 复制代码
stack.Clear();
stack.Push(1);

遍历

长度Count

cs 复制代码
Console.WriteLine(stack.Count);
 foreach(object item in stack)
 {
   Console.WriteLine(item);
 }

将栈转化为数组

cs 复制代码
object[] array = stack.ToArray();
for(int i = 0; i < array.Length; i++)
{
    Console.WriteLine(array[i]);
}

循环弹栈

cs 复制代码
while (stack.Count > 0)
{
    object o = stack.Pop();
    Console.WriteLine(o);
}
Console.WriteLine(stack.Count);
相关推荐
modelmd3 分钟前
研究C语言的hello world输出
c语言·开发语言·chrome
小小19926 分钟前
vue 单页面请求
开发语言·前端·javascript
hhb_6186 分钟前
JavaScript 本地存储与动态数据渲染实战案例
开发语言·javascript·ecmascript
kingwebo'sZone11 分钟前
PdfiumViewer使用权限控制期操作按钮(PdfViewer其实也可以完整兼容)
c#
淀粉肠kk13 分钟前
【C++11】智能指针详解
开发语言·c++
kyriewen1123 分钟前
Next.js部署:从本地跑得欢,到线上飞得稳
开发语言·前端·javascript·科技·react.js·前端框架·ecmascript
AI人工智能+电脑小能手23 分钟前
【大白话说Java面试题】【Java基础篇】第21题:HashMap和Hashtable的区别是什么
java·开发语言·面试·哈希算法·散列表·hash table
不想写代码的星星25 分钟前
COW(Copy-on-Write):开抄开抄,哎嘿,我装的
开发语言·c++
慕容卡卡27 分钟前
Claude 使用神器(web页面)--CloudCLI UI
java·开发语言·前端·人工智能·ui·spring cloud
咬_咬28 分钟前
go语言学习(函数)
开发语言·学习·golang