用Java堆栈
Java收集框架提供了一个堆栈类,它实现了堆栈数据结构。堆栈实现了LIFO,即后进先出。这意味着最后推送的元素是最先弹出的元素。
以下是一些方法。
序号 | 方法与说明 |
---|---|
1 | booleanempty() 测试此堆栈是否为空。如果堆栈为空,则返回true;如果堆栈包含元素,则返回false。 |
2 | 对象peek() 返回堆栈顶部的元素,但不删除它。 |
3 | 对象pop() 返回堆栈顶部的元素,并在此过程中将其删除。 |
4 | Object push(Object element) 将元素压入堆栈。元素也被返回。 |
5 | int search(Object element) 在堆栈中搜索元素。如果找到,则返回其与堆栈顶部的偏移量。否则,返回-1。 |
演示Java中堆栈的程序如下所示-
示例
import java.io.*;import java.util.*;
public class Example {
public static void main (String[] args) {
Stack<Integer> s = new Stack<Integer>();
s.push(5);
s.push(1);
s.push(9);
s.push(4);
s.push(8);
System.out.print("The stack is: " + s);
System.out.print("\nThe element popped is: ");
Integer num1 = (Integer) s.pop();
System.out.print(num1);
System.out.print("\nThe stack after pop is: " + s);
Integer pos = (Integer) s.search(9);
if(pos == -1)
System.out.print("\nThe element 9 not found in stack");
else
System.out.print("\nThe element 9 is found at position " + pos + " in stack");
}
}
输出结果
The stack is: [5, 1, 9, 4, 8]The element popped is: 8
The stack after pop is: [5, 1, 9, 4]
The element 9 is found at position 2 in stack
现在让我们了解上面的程序。
五个元素被推入堆栈。然后显示堆栈。之后,顶部的元素将弹出并显示。证明这一点的代码片段如下所示-
Stack<Integer> s = new Stack<Integer>();s.push(5);
s.push(1);
s.push(9);
s.push(4);
s.push(8);
System.out.print("The stack is: " + s);
System.out.print("\nThe element popped is: ");
Integer num1 = (Integer) s.pop();
System.out.print(num1);
System.out.print("\nThe stack after pop is: " + s);
之后,在堆栈中搜索元素9。如果存在,则显示其位置,否则显示元素不在堆栈中。演示此过程的代码段如下所示。
Integer pos = (Integer) s.search(9);if(pos == -1)
System.out.print("\nThe element 9 not found in stack");
else
System.out.print("\nThe element 9 is found at position " + pos + " in stack");
以上是 用Java堆栈 的全部内容, 来源链接: utcz.com/z/343414.html