Java Collection Framework中的堆栈类
本文向大家介绍Java Collection Framework中的堆栈类,包括了Java Collection Framework中的堆栈类的使用技巧和注意事项,需要的朋友参考一下
堆栈类
堆栈类在java.util包中可用。
在Stack类是子类Vector类的。
众所周知,Stack是LIFO(后进先出)数据结构。
此处给出LIFO的上述观点意味着最后插入的元素将首先弹出。
堆栈类仅包含一个构造函数,即默认构造函数。
默认构造函数的语法如下:
Stack st = new Stack();
堆栈类定义了各种方法来执行各种任务到堆栈上。堆栈类方法的名称如下:
void push(Object obj)
目的
pop()
目的
peek()
布尔值
empty()
int搜索(对象obj)
现在,我们将看到上面给出的Stack方法的目的,并且我们将一一研究。
i)void push(Object obj)
此方法用于将元素压入堆栈。
此方法在Stack方法中使用一个参数,该参数是要插入到Stack中的对象。
ii)对象 pop()
此方法用于从堆栈中删除元素,然后返回到堆栈顶部。
此方法在Stack方法中不传递任何参数。
iii)布尔值 empty()
此方法用于检查堆栈是否为空。
我们不会在Stack方法中将任何对象作为参数传递。
此方法的返回类型为Boolean,因此如果Stack为空,则返回true。
iv)对象 peek()
此方法用于返回堆栈的顶部。
我们不会在Stack方法中将任何对象作为参数传递。
v)int搜索(Object obj)
此方法用于将元素搜索到堆栈中。
我们仅将一个对象作为参数传递给Stack方法,而该参数是要在Stack中搜索的对象。
此方法的返回类型为int,因此,如果在堆栈中找到一个对象,则它从堆栈顶部返回偏移量或地址,否则,如果在堆栈上未找到对象,则返回-1。
示例
//Java程序来演示Stack的行为。 import java.util.*; class StackClass { public static void main(String[] args) { //创建一个Stack实例 Stack st = new Stack(); //通过使用push()将少量元素压入堆栈的方法 st.push(10); st.push(20); st.push(30); st.push(40); st.push(50); //显示当前堆栈 System.out.println("Current Stack List:" + st); //删除元素 //堆叠并返回堆叠顶部 System.out.println("The Popped Element:" + st.pop()); //通过使用peek()方法返回栈顶 System.out.println("The top of the Stack:" + st.peek()); //通过使用search()方法从堆栈中搜索元素 System.out.println("Search element is:" + st.search(30)); System.out.println("Search element not found:" + st.search(60)); } }
输出结果
E:\Programs>javac StackClass.java E:\Programs>java StackClass Current Stack List:[10, 20, 30, 40, 50] The Popped Element:50 The top of the Stack:40 Search element is:2 Search element not found:-1