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);
相关推荐
小码编匠14 小时前
C# 工控上位机必备:数据转换工具类与十个核心模块
后端·c#·.net
唐青枫3 天前
别再乱用 StartNew:C#.NET TaskFactory 任务调度实战详解
c#·.net
Artech3 天前
[MAF预定义的AIContextProvider-03]ChatHistoryMemoryProvider——赋予Agent从经验中学习的能力
ai·c#·agent·memory·maf
Scout-leaf5 天前
C#摸鱼实录——IoC与DI案例详解
c#
咕白m6255 天前
使用 C# 在 Excel 中应用多种字体样式
后端·c#
Artech5 天前
[MAF预定义的AIContextProvider-02]AgentSkillsProvider——将Agent Skills引入MAF
ai·c#·agent·agent skills·maf
LDR0066 天前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术6 天前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript
码云数智-园园6 天前
C++20 Modules 模块详解
java·开发语言·spring
swordbob6 天前
NIO的channel中什么是 fd(File Descriptor,文件描述符)
java·开发语言·nio