标签:

堆栈(stack)是线性表的一种,只能在该线性表的表尾进行插入、获取或删除的操作。该线性表具有LIFO(后进先出)的特点,那么Java中如何实现这一功能呢,呵呵呵,Java已经为我们提供了API——Stack,Stack类继承Vector类。下面通过一个例子来认识一下该API:

import java.util.Stack;

public class TestStack {

public static void main(String[] args) {

Stack stack = new Stack();

stack.push("a");//将数据压入堆栈顶部,其作用于下面addElement一样

stack.addElement("b");

stack.push("c");

stack.push("d");

stack.push("e");

if(!stack.empty()){//判断堆栈是否为空

System.out.println(stack.peek());//输出e。获取堆栈顶部的对象(Vector 对象的最后一项),但不从堆栈中移除该对象,如果堆栈为空,则抛出EmptyStackException异常

System.out.println(stack.pop()); //输出e。获取堆栈顶部的对象(Vector 对象的最后一项),并从堆栈顶部移除该对象,如果堆栈为空,则抛出EmptyStackException异常

System.out.println(stack.pop()); //输出d。

System.out.println(stack.search("c"));//获取指定对象在堆栈中的位置,以 1 为基数,如果没有则返回-1

}

}

}

标签:

java栈API_Java中的堆栈API——Stack相关推荐

  1. Java rp api_Java初级--常用的API

    1.String 类和StringBuffer类 位于Java.lang 包中: String 类对象中的内容一旦被初始化就不能再改变: StringBuffer 类用于封装内容可以改变的字符串: 用 ...

  2. java 常用的api_Java中常用的API(一)——Object

    概述 如果要问Java为什么是用起来非常舒服的语言,那很大一部分的功劳就是JavaAPI的.API定义了许多封装好的类和方法供我们使用,来处理特定的问题,所以学习常用的API是非常重要的. 同时,面向 ...

  3. java栈的应用_Java堆栈应用程序

    我有一个Java问题,涉及阅读一个文本文件,并检查它是否正确地平衡了花括号,方括号和括号 - '{','}','[',']','('和') ". 读取文件没有问题,但现在我应该使用名为Del ...

  4. java 栈 大小_java – JVM堆栈大小规范

    Question, what does 1 MB stack size states in JVM as I have no idea what size a stack frame of? 1 MB ...

  5. java 反射api_Java学习笔记--反射API

    反射API 1.反射API的介绍 通过反射API可以获取Java程序在运行时刻的内部结构.比如Java类中包含的构造方法.域和方法等元素,并可以与这些元素进行交换. 按照 一般地面向对象的设计思路,一 ...

  6. JAVA EE 开发中 常用的API包

    2019独角兽企业重金招聘Python工程师标准>>> API 常见的几个类:lang/util/io/math/net awt -------- 用于创建用户界面和绘制图形的所有类 ...

  7. java 音频 api_Java中的接口

    什么是接口 接口类似于抽象类,但它并不是类. 接口用interface修饰,格式是interface 接口名{} . 接口是抽象方法的集合,也就是说,接口内部只能是没有方法体的抽象方法. 接口存在的意 ...

  8. java 8 java demo_Java 8 中的 Streams API Demo

    Java8 Streams demo 一.获取List集合中的某个字段的List集合 例如: List userIdList = payBillVOList.stream().mapToLong(Pa ...

  9. java 栈的输出顺序,栈在Java类库中的顺序表示及实现——Stack

    栈是一种后进先出的数据结构.在它之上,主要有三种操作: (1)判断栈是否为空--empty(): (2)在栈顶添加一个元素--push(E): (3)删除并返回栈顶元素--pop(). 在Java类库 ...

最新文章

  1. 怎么能方便的进行数据库存储过程的版本管理?
  2. javascript 数组对象中的迭代方法
  3. js获取select选中的内容
  4. db2增加decimal类型字段小数位_05725.16.1Hive中decimal类型字段.0结尾数据显示异常问题处理...
  5. 怎么监听linux防火墙,linux怎么查看防火墙是否开启并清除防火墙规则?
  6. Coding and Paper Letter(四十)
  7. Java中Jedis连接Linux上的Redis出现connect time out(解决方案)
  8. 《Java 解惑》笔记(一)
  9. 「leetcode」56. 合并区间【贪心算法】详细图解!
  10. MySQL 大表优化方案(长文)
  11. 什么是Zepto.js
  12. Tilera推用于云计算的多核处理器Meshed
  13. 450g带盖吐司配方_【最好吃的吐司记录450克的做法步骤图】偶尔小雨_下厨房
  14. Code.V光学设计学习(三)——公差分析
  15. 【Java】各种日期转换
  16. RPC远程调用(RMI的方式实现RPC、HttpClient实现RPC远程调用)
  17. LSTM结构理解与python实现
  18. 多路测量实时同步工作原理_数字示波器原理
  19. zuul灰度发布功能实现
  20. 125款程序员专属情人节表白网站【建议收藏】HTML+CSS+JavaScript

热门文章

  1. [js] 在设置keyup监听事件后按F5刷新和按浏览器中刷新键刷新有什么区别?
  2. 前端学习(2796):实现左侧数据渲染和点击高亮
  3. 前端学习(1732):前端系列javascript之插入内容
  4. 前端学习(1568):封装一个面包屑导航
  5. 第一百三十七期:一个简单的小案例带你理解MySQL中的事务
  6. 第三十七期:刷脸支付叫好不叫座,为啥消费者和商家都不愿用先进科技?
  7. java学习(71):GUL边界布局管理器
  8. Python time sleep()方法
  9. 秒杀系统 mysql_秒杀系统-介绍
  10. vue-cli3.0之vue.config.js的配置项(注解)