`

java实现简单的栈

    博客分类:
  • Java
 
阅读更多

栈--只允许访问第一个数据项即:最后插入的数据。最简单的一句话描述:后进先出!

     public class StackX {
	private int maxSize;
	private long[] stackArray;
	private int top; 
        //初始化
	public StackX(int s) {
		maxSize = s;
		stackArray = new long[maxSize];
		top = -1;
	}
	
        //入栈
	public void push(long j) {
		stackArray[++top] = j;
	}
	
        //出栈
	public long pop() {
		return stackArray[top--];
	}
	
        //查看栈顶元素
	public long peek() {
		return stackArray[top];
	}
	
       //栈是否为空
	public boolean isEmpty() {
		return top == -1;
	}
	
        //栈是否已满
	public boolean isFull() {
		return top == maxSize - 1;
	}
	
        //例子测试
	public static void main(String[] args) {
		StackX  sx = new StackX(10);
		sx.push(1);
		sx.push(3);
		sx.push(5);
		sx.push(7);
		while (!sx.isEmpty()) {
			System.out.print(sx.pop()+" ");
		}
	}
}

 

分享到:
评论

相关推荐

    java 栈的实现和应用

    总结来说,Java提供了多种方式来实现和使用栈,无论是简单的`ArrayDeque`还是传统的`Stack`类,都能满足不同场景下的需求。栈作为一种基础数据结构,其灵活性和效率使其在编程中扮演着至关重要的角色。通过熟练掌握...

    java实现顺序栈

    Java实现顺序栈是一种常见的数据结构操作,主要用于存储和管理元素序列。栈是一种后进先出(LIFO,Last In First Out)的数据结构,通常用于执行回溯、递归等算法。在Java中,我们可以使用数组或ArrayList来实现顺序...

    用Java语言实现栈的功能

    实现弹栈,进栈,判断栈是否为空或满等功能 Java入门的简单程序

    java实现的栈

    然而,如果你需要自定义栈的行为或者优化性能,你可以选择实现`java.util.Deque`接口或者直接继承`java.util.ArrayList`或`java.util.LinkedList`来创建自己的栈。例如,下面是一个基于`ArrayList`的栈实现: ```...

    Java用栈实现的计算器

    本项目是利用栈来实现一个简单的计算器,不支持括号表达式的计算,其用户界面是通过Java Swing库构建的。下面将详细介绍这个计算器的实现原理以及涉及到的相关知识点。 1. **栈的基本概念**: 栈是一种线性数据...

    java模拟顺序栈实现回文串的判断

    Hui.java可能是实现栈的辅助类,它可能包含了栈操作的定义,如压栈(push)和弹栈(pop)等方法。例如: ```java public class Hui { private char[] stack; private int top; public Hui(int size) { stack =...

    线性表,单链表,栈 java实现

    下面将详细解释这些概念及其Java实现。 **线性表** 是一种基本的数据结构,它是由n(n>=0)个相同类型元素构成的有限序列。线性表中的元素具有顺序关系,即每个元素都有一个前驱和后继,除了第一个元素没有前驱,...

    java实现简单直播系统

    在Java中实现一个简单的直播系统是一项复杂而有趣的任务,它涉及到多个关键的...以上就是Java实现简单直播系统时可能遇到的主要知识点。实际开发中,还需要结合具体的业务需求和团队技术栈,灵活选择合适的技术方案。

    java简易计算器(四则运算、三角函数、实现优先级)

    Java简易计算器是一个基于Java编程语言实现的计算工具,它不仅支持基本的四则运算,还具备处理三角函数的能力,并且已经实现了运算的优先级规则。这个项目的核心是将用户输入的中缀表达式(常见的数学表达式形式)...

    java中LinkedList集合类实现栈和队列.doc

    在Java编程语言中,LinkedList集合类是一个非常重要的数据结构,它可以用来实现栈和队列这两种特殊的数据结构。LinkedList是一个双链表,每个节点包含数据元素和两个引用,分别指向前后节点,这使得在列表中进行插入...

    JAVA实现简单的对FTP上传与下载

    本文将详细介绍如何使用Java实现简单的FTP文件上传与下载功能,并基于提供的"ftpLoadDown.jar"库和"使用方法.txt"来解析相关知识。 首先,我们需要了解FTP的基础知识。FTP是一种应用层协议,它依赖于TCP/IP协议栈,...

    JAVA 版计算器,通过栈实现

    在Java编程语言中,我们可以利用数据结构中的栈(Stack)来实现一个简单的计算器。栈是一种后进先出(LIFO)的数据结构,非常适合处理类似计算表达式这样的问题,因为它们通常涉及运算符的优先级。在这个"JAVA版...

    Java快递e栈IO版(控制台简易版)

    总的来说,"Java快递e栈IO版(控制台简易版)"项目结合了Java基础的IO流操作和集合框架的使用,通过控制台界面实现了一个简单的快递管理系统。这不仅涉及到文件的读写,还包括数据结构的选择和操作,以及用户交互设计...

    栈的java版演示栈的java版演示栈的java版演示

    下面我们将深入探讨Java中如何实现栈,并通过实例进行演示。 1. **Java中的栈实现** Java标准库提供了`java.util.Stack`类来实现栈功能。这个类继承自`Vector`类,因此它包含了线程安全的增删查改操作。创建一个栈...

    Java实现画板(Java小程序 模仿Win系统画板)

    在本文中,我们将深入探讨如何使用...总结起来,Java实现的画板程序涉及到GUI设计、图形绘制、事件处理、文件操作等多个核心Java技术。通过学习和实践这个项目,开发者可以加深对Java Swing的理解,提升GUI编程能力。

    java使用栈进行压栈和弹出操作

    在Java编程语言中,栈是一种基于“后进先出”(LIFO)原则的数据结构,常用于实现递归、表达式求值、内存管理等多种功能。在这个特定的场景中,我们利用栈来模拟数据的压入和弹出操作,以评估性能。下面将详细介绍...

    Java实现显示进度条

    本文将详细介绍如何使用Java语言创建一个简单的图形界面(GUI),并通过进度条来显示任务的执行进度。 #### 技术栈 本示例主要使用了Swing库中的组件,Swing是Java中的一个用于创建图形用户界面的工具包,提供了...

    java 栈和队列的小例子

    在Java中,我们可以使用ArrayDeque类或者Stack类来实现栈。ArrayDeque相比于Stack性能更优,因为它提供了线程不安全但高效的操作。以下是一个简单的栈操作例子: ```java import java.util.Stack; public class ...

    java实现js中eval功能

    以上是使用Java实现JavaScript`eval`功能的基本思路和方法。需要注意的是,这种模拟`eval`的行为可能会带来安全风险,因为用户提供的输入可能包含恶意代码。因此,在实际应用中,务必对输入进行严格的验证和限制,...

    消息总线java实现

    可以使用Java集合(如队列或栈)模拟简单的消息队列,或者实现更复杂的持久化存储和并发控制。 5. **发布/订阅模型**:实现发布者向总线发布消息,而多个订阅者可以监听并接收这些消息。这需要一个注册机制,将消费...

Global site tag (gtag.js) - Google Analytics