工具类-Stack类总结

工具类-Stack类总结

Stack类的简介

  1. Stack是Vector的一个子类,实现了标准的后进先出堆栈。

  2. Stack的常用方法:

  • boolean isEmpty()-判断堆栈是否为空。

  • Object peek()-返回栈顶端的元素,但不从堆栈中移除它。

  • Object pop()-移除堆栈顶部的对象,并作为此函数的值返回该对象。

  • Object push(Object element)-将元素压入栈。

  • int search(Object element)-返回对象在堆栈中的位置,以1为基数。

Stack类方法的使用

  1. boolean isEmpty()方法

判断堆栈是否为空。

import java.util.Stack;
public class Test {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        //定义一个String泛型的Stack
        Stack<String> stack = new Stack<String>();
        //判断新建的栈是否为空
        boolean flag = stack.isEmpty();
        if(flag){
            System.out.println("新建的栈是为空");
        }else{
            System.out.println("新建的栈是不为空,它的长度是:"+stack.size());
        }
    }
}
// 新建的栈是为空
  1. Object peek()方法

返回堆栈顶端的元素,对堆栈中本身不做任何的改动,若堆栈里有元素就返回最顶端的元素。

import java.util.Stack;
public class Test {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        //定义一个String泛型的Stack
        Stack<String> stack = new Stack<String>();
        //把元素压入栈中
        stack.push("Java");
        stack.push("Python");
        stack.push("PHP");
        stack.push("软件测试");
        stack.push("软件工程");
        //返回栈顶端的元素,但不从堆栈中移除它
        String topE = stack.peek();
        System.out.println("返回堆栈中的栈顶元素为 : "+topE);
    }
}
// 返回堆栈中的栈顶元素为 : 软件工程
  1. Object pop()方法

移除堆栈顶部的对象,并作为此函数的值返回该对象。

import java.util.Stack;
public class Test {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        //定义一个String泛型的Stack
        Stack<String> stack = new Stack<String>();
        //把元素压入栈中
        stack.push("Java");
        stack.push("Python");
        stack.push("PHP");
        stack.push("软件测试");
        stack.push("软件工程");
        System.out.println("堆栈中的元素有:"+stack);
        //移除堆栈顶部的元素,但不从堆栈中移除它
        String remove = stack.pop();
        System.out.println("移除堆栈顶部的元素有:"+remove);
        System.out.println("移除后堆栈中的元素有:"+stack);
    }
}
// 堆栈中的元素有:[Java, Python, PHP, 软件测试, 软件工程]
// 移除堆栈顶部的元素有:软件工程
// 移除后堆栈中的元素有:[Java, Python, PHP, 软件测试]
  1. Object push(Object element)方法

将元素添加到堆栈的末尾,堆栈的长度加1。

import java.util.Stack;
public class Test {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        //定义一个Integer泛型的Stack
        Stack<Integer> stack = new Stack<Integer>();
        //把元素压入栈中
        stack.push(10);
        stack.push(20);
        stack.push(30);
        stack.push(40);
        System.out.println("堆栈中的元素有:"+stack);
    }
}
// 堆栈中的元素有:[10, 20, 30, 40]
  1. int search(Object element)方法

返回对象在堆栈中的位置,以1为基数。

import java.util.Stack;
public class Test {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        //定义一个Integer泛型的Stack
        Stack<Integer> stack = new Stack<Integer>();
        //把元素压入栈中
        stack.push(10);
        stack.push(20);
        stack.push(30);
        stack.push(40);
        System.out.println("堆栈中的元素有:"+stack);
        //返回对象在堆栈中的位置,它是以1为基数
        int find = stack.search(20);
        System.out.println("返回对象在堆栈中的位置:"+find);
    }
}
// 堆栈中的元素有:[10, 20, 30, 40]
// 返回对象在堆栈中的位置:3
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值