栈(Java实现)
Posted 人工智能之路上的菜鸡
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了栈(Java实现)相关的知识,希望对你有一定的参考价值。
package ch03; public class MyStack { // 底层实现是一个数组 private long[] arr; private int top; /** * 默认的构造方法 */ public MyStack() { arr = new long[10]; top = -1; } /** * 带参数构造方法,参数为数组初始化大小 */ public MyStack(int maxsize) { arr = new long[maxsize]; top = -1; } /** * 添加数据 */ public void push(int value) { arr[++top] = value; } /** * 移除数据 */ public long pop() { return arr[top--]; } /** * 查看数据 */ public long peek() { return arr[top]; } /** * 判断是否为空 */ public boolean isEmpty() { return top == -1; } /** * 判断是否满了 */ public boolean isFull() { return top == arr.length - 1; } }
package ch03; public class TestMyStack { public static void main(String[] args) { MyStack ms = new MyStack(4); ms.push(23); ms.push(12); ms.push(1); ms.push(90); System.out.println(ms.isEmpty()); System.out.println(ms.isFull()); System.out.println(ms.peek()); System.out.println(ms.peek()); while(!ms.isEmpty()) { System.out.print(ms.pop() + ","); } System.out.println(ms.isEmpty()); System.out.println(ms.isFull()); } }
以上是关于栈(Java实现)的主要内容,如果未能解决你的问题,请参考以下文章