Java开发基础入门之Java基础中的Stack类及其常用方法

110 篇文章 4 订阅

一、Stack类

1.Stack是Vector的一个子类,它实现标准的后进先出堆栈。Stack只定义了创建空堆栈的默认构造方法。

Stack()

2.Stack类里面主要实现的有以下的几个方法:

(1)boolean empty( )方法是判断堆栈是否为空。

(2)Object peek( )方法是返回栈顶端的元素,但不从堆栈中移除它。

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

(4)Object push (Object element)方法是把元素压入栈。

(5)int search(Object element)方法是返回对象在堆栈中的位置,它是以1为基数。

二、Stack类boolean empty()方法

1.boolean empty()方法是判断堆栈是否为空,就需要有一个变量来计算当前栈的长度,若变量的值为0,说明这个栈是空的。

2.例子的实现:

import java.util.Stack;

public class T7 {

public static void main(String[] args) {

// TODO Auto-generated method stub

//定义一个String泛型的Stack

Stack stack = new Stack();

//判断新建的栈是否为空

boolean flag=stack.empty();

if(flag){

System.out.println(“新建的栈是为空”);

}else{

System.out.println(“新建的栈是不为空,它的长度是:”+stack.size());

}

}

}

运行的结果如下所示:
IMG_256
三、Stack类Object peek()方法

1.Object peek( )方法是返回栈顶端的元素,对堆栈中本身不做任何的改动。若栈里有元素就返回最顶端的元素。

2.例子的实现

import java.util.Stack;

public class T8 {

public static void main(String[] args) {

// TODO Auto-generated method stub

//定义一个String泛型的Stack

Stack stack = new Stack();

//把元素压入栈中

stack.push(“Java”);

stack.push(“Python”);

stack.push(“PHP”);

stack.push(“软件测试”);

stack.push(“软件工程”);

//返回栈顶端的元素,但不从堆栈中移除它

String topE=stack.peek();

System.out.println("返回堆栈中的栈顶元素为 : "+topE);

}

}

运行的结果如下所示:
在这里插入图片描述
四、Stack类Object pop()方法

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

2.例子的实现

import java.util.Stack;

public class T8 {

public static void main(String[] args) {

// TODO Auto-generated method stub

//定义一个String泛型的Stack

Stack stack = new Stack();

//把元素压入栈中

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);

}

}

运行的结果如下所示:
在这里插入图片描述
五、Stack类Object push (Object element)方法

1.push(Object element)方法把入栈的元素添加到数组的末尾,数组的长度就加1。

2.例子的实现

import java.util.Stack;

public class T9 {

public static void main(String[] args) {

// TODO Auto-generated method stub

//定义一个Integer泛型的Stack

Stack stack = new Stack();

//把元素压入栈中

stack.push(10);

stack.push(20);

stack.push(30);

stack.push(40);

System.out.println(“堆栈中的元素有:”+stack);

}

}

运行的结果如下所示:
在这里插入图片描述
六、Stack类int search(Object element)方法

1.int search(Object element)方法是返回对象在堆栈中的位置,它是以1为基数。

2.例子的实现

import java.util.Stack;

public class T9 {

public static void main(String[] args) {

// TODO Auto-generated method stub

//定义一个Integer泛型的Stack

Stack stack = new Stack();

//把元素压入栈中

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);

}

}

运行的结果如下所示:
在这里插入图片描述
七、总结

本文主要介绍了Stack类、Stack类的常用方法,例如boolean empty()方法、Object peek()方法、Object pop()方法、Object push (Object element)方法、int search(Object element)方法。Stack是Vector的一个子类,它实现标准的后进先出堆栈。empty()方法判断堆栈是否为空、peek()方法返回栈顶端的元素,对堆栈中本身不做任何的改动、pop()方法移除堆栈顶部的对象、push()方法把元素压入栈中、search()方法是返回对象在堆栈中的位置,它是以1为基数。通过本文的学习,希望对你有所帮助!

文章来源:网络 版权归原作者所有

上文内容不用于商业目的,如涉及知识产权问题,请权利人联系小编,我们将立即处理

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值