Java Stack 类

栈是Vector的一个子类,它实现了一个标准的后进先出的栈。

堆栈只定义了默认构造函数,用来创建一个空栈。 堆栈除了包括由Vector定义的所有方法,也定义了自己的一些方法。

Stack()

除了由Vector定义的所有方法,自己也定义了一些方法:
序号 方法描述
1 boolean empty()
测试堆栈是否为空。
2 Object peek( )
查看堆栈顶部的对象,但不从堆栈中移除它。
3 Object pop( )
移除堆栈顶部的对象,并作为此函数的值返回该对象。
4 Object push(Object element)
把项压入堆栈顶部。
5 int search(Object element)
返回对象在堆栈中的位置,以 1 为基数。
实例

下面的程序说明这个集合所支持的几种方法
实例

import java.util.*;public class StackDemo {static void showpush(Stack<Integer> st, int a) {st.push(new Integer(a));System.out.println("push(" + a + ")");System.out.println("stack: " + st);}static void showpop(Stack<Integer> st) {System.out.print("pop -> ");Integer a = (Integer) st.pop();System.out.println(a);System.out.println("stack: " + st);}public static void main(String args[]) {Stack<Integer> st = new Stack<Integer>();System.out.println("stack: " + st);showpush(st, 42);showpush(st, 66);showpush(st, 99);showpop(st);showpop(st);showpop(st);try {showpop(st);} catch (EmptyStackException e) {System.out.println("empty stack");}}
}

以上实例编译运行结果如下:

stack: [ ]
push(42)
stack: [42]
push(66)
stack: [42, 66]
push(99)
stack: [42, 66, 99]
pop -> 99
stack: [42, 66]
pop -> 66
stack: [42]
pop -> 42
stack: [ ]
pop -> empty stack

Java Stack 类相关推荐

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

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

  2. java stack 类 效率_Java中ArrayList、LinkedList、Vector、Stack的比较

    一.介绍 先回顾一下List的框架图 由图中的继承关系,可以知道,ArrayList.LinkedList.Vector.Stack都是List的四个实现类. AbstractList是一个抽象类,它 ...

  3. 数据结构——Java Stack 类

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

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

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

  5. java.util.Stack类简介

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

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

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

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

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

  8. Java的Stack类

    Java的Stack类 1.Stack类在java.util包中: 2.继承关系 Stack继承了Vector,而Vector类底层使用数组存储数据,那么Stack对象中存储的数据也是存储在数组中的. ...

  9. Java 栈类(stack.class)

    栈 最近刷leetcode,发现栈经常会使用到.是我们常用的一种数据结构. java中的栈类 从图中可以发现,栈是属于java.util包的 栈是Vector的一个子类,继承于Vector.它实现了一 ...

最新文章

  1. 九种食物帮你赶走忧郁
  2. 【OpenCV3】图像的读取、显示与保存
  3. 程序员的光荣与梦想——论侠客梦的延续与幻灭
  4. 【数字逻辑设计】Logisim构建锁存器/触发器
  5. 【树莓派】给树莓派安装中文输入法Fcitx及Google拼音输入法
  6. 后端实体类接收数组_三级联动返回数组的方式
  7. python到包快捷键_如何最简单、通俗地理解Python的包?
  8. python模拟内置函数all_python内置函数all和any
  9. 字符指针变量和字符数组的对比
  10. 初次安装Mysql5.7以上版本后初始root密码找不到的问题
  11. Solr 4.10.3 集成 IK Analyzer 2012FF 中文分词器
  12. CMMI3认证和CMMI5认证有哪些不同
  13. 在Windows下配置svn服务端钩子程序
  14. 网页端接入海康监控摄像头画面
  15. 2020神舟几号发射_xuex:2020北师大版三年级数学下册除法练习题神舟一号发射时间...
  16. erp系统服务器维护,ERP系统维护服务器维护管理文档模板.doc
  17. 为什么CAN总线支线长度不能太长?
  18. USB3014-应用程序开发
  19. 作为一名APP开发者,你更Care什么?
  20. C#【必备技能篇】VS2019 使用C/C++ 生成DLL 文件,并用 C/C++、C#调用DLL

热门文章

  1. [转]如何进行单元测试
  2. ArcGIS,Envi软件中的卷帘工具使用及对比
  3. Java面向对象编程学习
  4. Android之自定义ContentProvider详解
  5. Hadoop的伪分布安装 hadoop的核心思想
  6. 【iVX 初级工程师培训教程 10篇文拿证】05 画布及飞机大战游戏制作
  7. lru算法实现 redis_使用数组与双向链表实现一个简单的LRU算法
  8. mysql申请审核系统_Mysql审核工具archery
  9. mysql 权重 取值_mysql如何按权重查询数据啊?
  10. 大气的压力竟然能吊起相扑力士!?