Java的Stack类

1.Stack类在java.util包中;

2.继承关系

Stack继承了Vector,而Vector类底层使用数组存储数据,那么Stack对象中存储的数据也是存储在数组中的。

3.构造函数

Stack只有一个无参数的构造函数。

4.常用方法介绍

(1)push(item):把数据压入栈

addElement()是父类Vector中的方法,会将压入栈的元素存放在数组末尾。

(2)peek():查看栈顶的数据,返回值为栈顶元素,底层数组中最后一个元素,但是不会删除该元素

(3)pop():查看栈顶的数据,返回值为栈顶元素,底层数组中最后一个元素,同时把栈中的该元素删除。

(4)empty():判断栈是否为空栈

@Test

public void testStack(){

Stack<Integer> stacks=new Stack<Integer>();      //创建栈对象

stacks.push(10);     //插入栈元素

stacks.push(20);

//查看栈顶元素并弹出

System.out.println("栈顶元素 "+stacks.pop());

//查看栈顶元素不弹出

System.out.println("栈顶元素 "+stacks.pop());

//判断栈是否为空

System.out.println("栈是否为空 "+stacks.empty());

}

输出结果

栈顶元素 20

栈顶元素 10

栈是否为空 true

Java的Stack类相关推荐

  1. java.util.Stack类简介

    转载自  java.util.Stack类简介 Stack是一个后进先出(last in first out,LIFO)的堆栈,在Vector类的基础上扩展5个方法而来 Deque(双端队列)比起St ...

  2. java为什么不推荐使用stack_栈和队列的面试题Java实现,Stack类继承于Vector这两个类都不推荐使用...

    在 thinking in java中看到过说Stack类继承于Vector,而这两个类都不推荐使用了,但是在做一到OJ题时,我用LinkedList来模拟栈和直接用Stack,发现在进行入栈出栈操作 ...

  3. java集合类——Stack栈类与Queue队列

    今日走读代码时,遇到stack栈类,特查看java的API文档,总结如下: Stack继承Vector类,它通过五个操作对类 Vector 进行了扩展. 栈是 后进先出的. 栈提供了通常的 push ...

  4. java中的stack类和C++中的stack类的区别

    文章目录 1 java中的stack类和C++中的stack类的区别 1.1 java中的stack类 1.2 C++中的stack类 1.3 分析 不经意间想到了这个问题,存到栈中的是对象的引用,还 ...

  5. Java Stack 类

    Java Stack 类 栈是Vector的一个子类,它实现了一个标准的后进先出的栈. 堆栈只定义了默认构造函数,用来创建一个空栈. 堆栈除了包括由Vector定义的所有方法,也定义了自己的一些方法. ...

  6. java堆栈类在哪个包里_Java堆栈Stack类的使用

    栈的官方概念 栈是java存放内存的两种结构之一.栈是限定仅在表尾进行插入或删除操作的线形表. 通俗的讲,往栈里面存数据,就是先进后出.最先存入的数据在最底部,取出的时候最后被取出.可以理解为吃饱了就 ...

  7. java stack 类_Java Stack 类 - Java 教程 - 自强学堂

    Java Stack 类 栈是Vector的一个子类,它实现了一个标准的后进先出的栈. 堆栈只定义了默认构造函数,用来创建一个空栈. 堆栈除了包括由Vector定义的所有方法,也定义了自己的一些方法. ...

  8. 为什么子孙后代会讨厌使用java.util.Stack

    在我用无意义的重言式杀死你之前,这是要点 如果您的应用程序接近实时,或者将代码发送到Mars,则需要保留Java中默认的Stack实现. 根据LinkedList编写您自己的版本. 同样,如果您的应用 ...

  9. 深入研究java.lang.Runtime类【转】

    转自:http://blog.csdn.net/lastsweetop/article/details/3961911 目录(?)[-] javalang 类 Runtime getRuntime e ...

最新文章

  1. withCredentials--相同主域跨域解决方法
  2. ajax html例子,AJAX实例
  3. 云炬Android开发笔记 9主界面-通用底部导航设计与一键式封装
  4. java当数值超过byte时_java试题及答案
  5. 二分图匹配之匈牙利算法
  6. 初二模拟赛总结(2019.8.7)
  7. 学生信息系统求助_一个学生信息录入和查询的系统
  8. animation 先执行一次 在持续执行_这一次,彻底弄懂 JavaScript 执行机制
  9. 质因数分解(信息学奥赛一本通-T1098)
  10. Android开发学习笔记-GridView的动态显示
  11. java rx_史上最浅显易懂的RxJava入门教程
  12. ASP.NET FormsAuthentication跨站点登录时绝对地址返回的问题
  13. linux atoi,atoi()的替代办法
  14. sql2008计算机环境,win2008r2下安装sql2008r2初版
  15. VS2015社区版MFC安装
  16. 颜色的原理,三基色原理以及HLS(色相、亮度、饱和度)原理
  17. Python 实现 批量 复制指定PDF文件 到指定文件夹并批量打印出来
  18. Lightweight Augmented Graph Network Hashing for Scalable Image Retrieval
  19. 【再也不怕pdf转换了】使用Python实现PDF扫描件生成DOCX或EXCEL
  20. 思科开源软交换机vpp环境搭建

热门文章

  1. 一代上网人的记忆!百度浏览器将不再更新
  2. 受“社保掌上通”APP影响 麦达数字遭深交所问询
  3. 再谈typedef(重点为函数指针)
  4. java中的Servlet
  5. Tornado web开发之简单文件上传
  6. 【java】Java 动态调试技术原理及实践
  7. 【netty】Netty并发工具-Promise
  8. 【clickhouse】Port 9000 is for clickhouse-client program
  9. 60-200-072-使用-命令-MySQL使用mysqldumpslow分析慢查询日志文件
  10. 【Es】Es 选主流程