Java提供了一个名为Stack的内置对象类型。这是一个基于后进先出(LIFO)原则的集合。在创建时,堆栈为空。

它使用五种方法扩展了Vector类,这些方法允许将向量视为堆栈。五种方法是:

1。 Object push(Object element) :将元素推送到堆栈顶部。

2. Object pop():移除并返回堆栈的顶部元素。如果我们在调用堆栈为空时调用pop(),则抛出'EmptyStackException'异常。

3. Object peek():返回堆栈顶部的元素,但不删除它。

4.  boolean empty():如果堆栈顶部没有任何内容,则返回true。否则,返回false。

5. int search(Object element):它确定堆栈中是否存在对象。如果找到该元素,它将从堆栈顶部返回元素的位置。否则,它返回-1。

// Java code for stack implementation

import java.io.*;

import java.util.*;

class Test

{

// Pushing element on the top of the stack

static void stack_push(Stack stack)

{

for(int i = 0; i < 5; i++)

{

stack.push(i);

}

}

// Popping element from the top of the stack

static void stack_pop(Stack stack)

{

System.out.println("Pop :");

for(int i = 0; i < 5; i++)

{

Integer y = (Integer) stack.pop();

System.out.println(y);

}

}

// Displaying element on the top of the stack

static void stack_peek(Stack stack)

{

Integer element = (Integer) stack.peek();

System.out.println("Element on stack top : " + element);

}

// Searching element in the stack

static void stack_search(Stack stack, int element)

{

Integer pos = (Integer) stack.search(element);

if(pos == -1)

System.out.println("Element not found");

else

System.out.println("Element is found at position " + pos);

}

public static void main (String[] args)

{

Stack stack = new Stack();

stack_push(stack);

stack_pop(stack);

stack_push(stack);

stack_peek(stack);

stack_search(stack, 2);

stack_search(stack, 6);

}

}

输出:

Pop :

4

3

2

1

0

Element on stack top : 4

Element is found at position 3

Element not found

java stack top_Java中的堆栈类Stack类 - Break易站相关推荐

  1. java栈API_Java中的堆栈API——Stack

    标签: 堆栈(stack)是线性表的一种,只能在该线性表的表尾进行插入.获取或删除的操作.该线性表具有LIFO(后进先出)的特点,那么Java中如何实现这一功能呢,呵呵呵,Java已经为我们提供了AP ...

  2. java url类_Java中的URL类和示例 - Break易站

    URL类是Internet上任何可用资源的网关.类URL表示统一资源定位符,它是指向万维网上"资源"的指针.资源可以指向简单的文件或目录,也可以引用更复杂的对象,例如对数据库或搜索 ...

  3. java 使用不同目录下的类_如何运行在不同目录下的java类文件? - Break易站

    Java 基础语法 在本文中,我们将学习如何使用其他项目的实用程序,类和成员.在继续之前,让我们了解一些关键字. 类路径 类路径是jvm开始执行程序的位置.与传统的动态加载行为类似,当执行Java程序 ...

  4. dictionary类 java_Java中的Dictionary 类与示例 - Break易站

    Java 集合框架 Java.util.Dictionary是一个抽象类,表示键值关系,并且与map类似.给定一个键,您可以存储值,并在需要时可以使用其键检索值.因此,它是键值对的列表. public ...

  5. java new short_Java中的Java.Lang.Short类 - Break易站

    Java 包装类 Java中的Java.Lang.Short类 Short类是基本类型short 的包装类,它包含几种有效处理短值的方法,如将其转换为字符串表示形式,反之亦然.Short类的对象可以包 ...

  6. java triplet_JavaTuples(元组)中的Triplet类 - Break易站

    Java 元组tuple Triplet是从元组JavaTuples库的.由于这个Triplet是一个泛型类,它可以包含任何类型的值. 由于Triplet是一个元组,因此它也具有JavaTuples的 ...

  7. java 主线程_Java中的主线程 - Break易站

    Java 多线程 Java为多线程编程提供内置支持.多线程程序包含两个或多个可以并发运行的部分.这样的程序的每个部分称为线程,每个线程定义一个单独的执行路径. Java中的主线程 当Java程序启动时 ...

  8. Java - 解释内存中的栈(stack)、堆(heap)和静态区(static area)的用法

    分享一个大牛的人工智能教程.零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请点击http://www.captainbed.net 通常我们定义一个基本数据类型的变量,一个对象的引用, ...

  9. java在集合中的方法变动的类_java中级面试题 之基础篇

    一.Java基础 1. 实例方法和静态方法有什么不一样? 1.在外部调用静态方法时,可以使用"类名.方法名"的方式,也可以使用"对象名.方法名"的方式.而实例方 ...

  10. java 构造函数 单例_Java中的私有构造函数和单例类 - Break易站

    Java 构造函数 Java中的私有构造函数和单例类 我们首先分析下面的问题: 我们可以有私人构造函数吗? 正如你可以很容易猜到的,就像我们可以为构造函数提供访问说明符一样.如果它是私人的,那么它只能 ...

最新文章

  1. python趣味编程表白_【暖心一笑】Python趣味编程:定时给Ta讲笑话
  2. 面试官,别再问高并发了!
  3. 第四次实验 恶意代码技术
  4. php 怎么防止提交空记录,为什么空提交什么都不提示?
  5. 【POJ - 1275】Cashier Employment(差分约束,建图)
  6. Ethercat解析(九)之过程数据
  7. 用户模块 之 完成查询所有用户
  8. 获取注册表键值并格式转换
  9. Mac安装双系统后在Windows下体验mac原生触控功能(双指、三指、四指)
  10. OpenStack在天河二号的大规模部署实践(转)
  11. 计算机网页外文文献图书,免费外文文献网站.doc
  12. 百度和今日头条正式开战
  13. 2016秋招面经(蘑菇街+BT+网易杭研+CVTE+唯品会)
  14. 计算机考试在线考试答案2019,2019石油华东《计算机应用基础》在线考试(答案)...
  15. 前端VUE图片预加载
  16. 随机数生成器RandomNumberGenerator
  17. Linux:CPU状态信息us,sy,ni,id,wa,hi,si,st含义
  18. 408 知识点笔记——操作系统(内存管理)
  19. 20款漂亮的免费英文字体下载
  20. 关于yardlife

热门文章

  1. doxygen 注释规范_Doxygen简明注释语法
  2. OSChina 周三乱弹 —— 有趣的灵魂会流油
  3. python:游戏倒计时器
  4. Tesseract-OCR5.0软件安装和语言包安装(Windows系统)
  5. 网络工程师必知的几款网络故障排除工具
  6. [网站推荐] 百度识图
  7. TCP/IP(三):ARP报文格式详解
  8. 使用hexo发布文章
  9. 评论系统--开发总结
  10. scratch编程 飞翔的小鸟 开发笔记 0604