Java 如何建栈

adminweb

在Java中,栈(Stack)是一种非常重要的数据结构,它遵循后进先出(LIFO,Last In First Out)的原则,Java提供了多种方式来创建和操作栈,其中最常用的是使用Java集合框架中的java.util.Stack类或者java.util.Deque接口的实现类(如ArrayDeque)。

使用java.util.Stack类创建栈

在Java中,Stack类是Vector类的子类,因此继承了Vector的特性,你可以直接使用Stack类来创建和操作栈。

import java.util.Stack;
public class StackExample {
    public static void main(String[] args) {
        // 创建一个新的栈
        Stack<Integer> stack = new Stack<>();
        // 入栈操作
        stack.push(1); // 压入元素1
        stack.push(2); // 压入元素2
        // 出栈操作
        int poppedValue = stack.pop(); // 弹出栈顶元素,此时poppedValue为2
        // 查看栈顶元素(但不移除)
        int peekedValue = stack.peek(); // peekedValue仍为1,因为未移除
        // 检查栈是否为空
        if (stack.isEmpty()) {
            System.out.println("Stack is empty.");
        } else {
            System.out.println("Stack contains elements.");
        }
    }
}

使用java.util.Deque接口创建栈(推荐)

除了使用Stack类外,还可以使用Deque接口的实现类如ArrayDeque来模拟栈的行为,由于Deque提供了更丰富的操作方法,因此这种方式更为推荐。

import java.util.Deque;
import java.util.ArrayDeque;
public class StackUsingDequeExample {
    public static void main(String[] args) {
        // 使用ArrayDeque实现Deque接口来创建栈
        Deque<Integer> stackDeque = new ArrayDeque<>();
        // 入栈操作(等同于push)
        stackDeque.push(1); // 添加元素到栈顶
        stackDeque.push(2); // 继续添加元素到栈顶
        // 出栈操作(等同于pop)
        int poppedValue = stackDeque.pop(); // 移除并返回栈顶元素,此时poppedValue为2
        // 查看栈顶元素但不移除(等同于peek)
        int peekedValue = stackDeque.peek(); // peekedValue仍为1,因为未移除元素
    }
}

在这两种方式中,你可以根据具体需求选择适合的创建栈的方式,如果你需要更丰富的数据结构操作方法,推荐使用基于Deque的实现方式,而如果你希望使用更简单直接的方式,可以直接使用Stack类,无论哪种方式,都遵循了后进先出的原则。

插入代码段
《java 如何建栈》 (此代码段已直接插入在文章内容中)

  • include
  • include
  • include 引入标准输入输出头文件
  • define DEBUG 1 定义DEBUG宏,1表示开启调试,0表示关闭调试
  • include
  • include 用于输入输出
  • 【实探】宁德时代宜春锂云母矿准时停产,有人深夜上山蹲守!
  • GTC泽汇资本:柴油进口监管难题仍在持续
  • 重药控股计划回购8000万元至1亿元股份
  • include
  • NHTSA结束对45.5万辆日产汽车发动机故障调查
  • 玖龙纸业早盘涨超7% 广西北海基地PM56文化纸生产线成功开机
  • include
  • 国际油价周二下跌 OPEC+增产抵消俄罗斯供应中断担忧
  • 瑞银:友邦中国、中国平安及中国人寿在分红型产品转型中占优
  • Java后台如何高效处理数据去重
  • 本文"Java 如何建栈"文章版权声明:除非注明,否则均为技术百科网原创文章,转载或复制请以超链接形式并注明出处。

    Java 如何建栈

    取消
    微信二维码
    微信二维码
    支付宝二维码