当前位置: 首页 > news >正文

免费域名申请哪个最好自贡网站seo

免费域名申请哪个最好,自贡网站seo,微信客户端小程序,成都网络营销公司哪家好目录 一、概述 二、基本的用法 1.入栈 2.出栈 Pop 方法 Peek 方法 3.判断元素是否存在 4.获取 Stack 的长度 5.遍历 Stack 6.清空容器 7.Stack 泛型类 三、结束 一、概述 栈表示对象的简单后进先出 (LIFO) 非泛型集合。 Stack 和 List 一样是一种储存容器&#x…

目录

一、概述

二、基本的用法

1.入栈

2.出栈

Pop 方法

Peek 方法

3.判断元素是否存在

4.获取 Stack 的长度

5.遍历 Stack

6.清空容器

7.Stack 泛型类

三、结束


一、概述

栈表示对象的简单后进先出 (LIFO) 非泛型集合。

Stack 和 List 一样是一种储存容器,它遵循先进后出的原则,能够存储任意类型,但并不能获取到指定的位置,只能存入和取出,取出元素后,Stack 内部的元素自动删除。

详细API参考:Stack 类 (System.Collections) | Microsoft Learn

二、基本的用法

1.入栈

入栈使用 push 方法,这里可以添加任意类型

using System;
using System.Collections;namespace Stack_Test
{internal class Program{static void Main(string[] args){Stack stack = new Stack();stack.Push("a");stack.Push("b");stack.Push(3);stack.Push(4.5);Console.ReadKey();}}
}

2.出栈

出栈常用的方法有两种,第一种:

Pop 方法

using System;
using System.Collections;namespace Stack_Test
{internal class Program{static void Main(string[] args){Stack stack = new Stack();stack.Push("a");stack.Push("b");stack.Push(3);stack.Push(4.5);var value = stack.Pop();Console.WriteLine(value);Console.WriteLine("count:" + stack.Count);Console.ReadKey();}}
}

运行

这里可以看到,最后添加的 4.5 ,被最先取出来,取出来的同时,也从 stack 中删除了,此时的长度为3, 这就是概述中描述的 先进后出 原则,听起来有点难以理解,其实就是,谁最后一个添加进来,谁就第一个出去,专逮住队伍的最后一个往出扯。

第二种:

Peek 方法

using System;
using System.Collections;namespace Stack_Test
{internal class Program{static void Main(string[] args){Stack stack = new Stack();stack.Push("a");stack.Push("b");stack.Push(3);stack.Push(4.5);var value = stack.Peek();Console.WriteLine(value);Console.WriteLine("count:" + stack.Count);Console.ReadKey();}}
}

运行

Peek 可以根据后进先出的原则取出一个元素,它并不会像 Pop 方法一样,把元素删除,但是也只能取一个元素,看下面代码,重复的获取是没用的,要想数据一个个取出来,还是得老老实实的用 Pop 方法。

using System;
using System.Collections;namespace Stack_Test
{internal class Program{static void Main(string[] args){Stack stack = new Stack();stack.Push("a");stack.Push("b");stack.Push(3);stack.Push(4.5);var value1 = stack.Peek();var value2 = stack.Peek();var value3 = stack.Peek();Console.WriteLine(value1);Console.WriteLine(value2);Console.WriteLine(value3);Console.ReadKey();}}
}

运行

3.判断元素是否存在

使用 Contains 方法可以判断元素是否存在,如下代码

using System;
using System.Collections;namespace Stack_Test
{internal class Program{static void Main(string[] args){Stack stack = new Stack();stack.Push("a");stack.Push("b");stack.Push(3);stack.Push(4.5);Console.WriteLine("是否存在:" + stack.Contains(4.5));Console.ReadKey();}}
}

运行

4.获取 Stack 的长度

长度的获取和 List 一样,使用 Count 属性

using System;
using System.Collections;namespace Stack_Test
{internal class Program{static void Main(string[] args){Stack stack = new Stack();stack.Push("a");stack.Push("b");stack.Push(3);stack.Push(4.5);Console.WriteLine("长度:" + stack.Count);Console.ReadKey();}}
}

运行

5.遍历 Stack

Stack 可以使用 foreach 遍历,并且不会移除元素

using System;
using System.Collections;namespace Stack_Test
{internal class Program{static void Main(string[] args){Stack stack = new Stack();stack.Push("a");stack.Push("b");stack.Push(3);stack.Push(4.5);foreach (var item in stack){Console.WriteLine(item);}Console.WriteLine("长度:" + stack.Count);Console.ReadKey();}}
}

 运行

6.清空容器

清除 stack 使用 Clear 方法

using System;
using System.Collections;namespace Stack_Test
{internal class Program{static void Main(string[] args){Stack stack = new Stack();stack.Push("a");stack.Push("b");stack.Push(3);stack.Push(4.5);stack.Clear();Console.WriteLine("长度:" + stack.Count);Console.ReadKey();}}
}

运行

7.Stack 泛型类

Stack 泛型类 和 Stack 的用法其实没有什么不同,Stack 泛型类 只是在使用时多了一个约束,不能和 Stack 标准形式一样,可以添加任意类型到栈中,而是使用固定的元素类型

using System;
using System.Collections.Generic;namespace Stack_Test
{internal class Program{static void Main(string[] args){Stack<string> stack = new Stack<string>();//将元素入栈stack.Push("a");stack.Push("b");stack.Push("c");//栈的元素个数int count = stack.Count;//是否包含指定的元素bool b = stack.Contains("a");//Stack.Peek() 方法返回顶部的对象而不将其从堆栈中移除string name = stack.Peek();// Pop 把元素出栈,栈中就没有这个元素了string s1 = stack.Pop();Console.WriteLine(s1);string s2 = stack.Pop();Console.WriteLine(s2);string s3 = stack.Pop();Console.WriteLine(s3);Console.ReadKey();}}
}

三、结束

最后,我们来看看 Stack 有那些特点:

先进后出,存在装箱拆箱,存储任意类型,无法使用 for 循环遍历查看元素,无法获取指定位置元素,只能查看获取栈顶元素。

end

http://www.dinnco.com/news/44384.html

相关文章:

  • 网站建设app西安百度关键词包年
  • 企业网站建设网站友情链接检测工具
  • wordpress懒加载插件保定百度推广优化排名
  • 青岛做网站建设定制优化网站的软件下载
  • 深圳网站建设科技有限公司关键词林俊杰歌词
  • wordpress 5.0.1网站优化的方法有哪些
  • 马鞍山哪里做网站奉化seo页面优化外包
  • 网站建设计划方案模板下载上海seo推广方法
  • 做网站一定要正版系统吗爱站网长尾关键词挖掘查询工具
  • html网页制作实训报告百度seo网站优化 网络服务
  • wap建站教程平台推广营销
  • 西安广告设计制作公司seo排名优化软件
  • 电商网站的设计与实现视频教程网络推广的基本方法
  • 盱眙有做网站开发的吗深圳市前十的互联网推广公司
  • 中山网站建设方案推广泉州seo
  • 网站建设还能赚钱吗企业网络营销策划案例
  • java开发工程师证书石家庄整站优化技术
  • 邢台做网站的搜索引擎优化方法案例
  • 手机移动网络屏蔽的网站2020最成功的网络营销
  • 海南省海口市政府网站官网网络营销类型有哪些
  • 哪个网站做h5最好爱站网关键词挖掘查询工具
  • 做网站采集内容西安百度提升优化
  • 做网站后台需要学什么黑龙江新闻
  • 做最好的在线中文绅士本子阅读网站外链怎么发
  • 公司网站怎么做百度商家入驻怎么做
  • 深圳市建设银行网站首页软文推广平台有哪些
  • 一个网页多少钱合适优化大师电脑版官方
  • 淘宝网官网登录企业整站seo
  • 用bootstrop制作一个网站排名优化服务
  • 哪些网站可以做招商广告语软件开发公司网站