用Java堆栈

Java收集框架提供了一个堆栈类,它实现了堆栈数据结构。堆栈实现了LIFO,即后进先出。这意味着最后推送的元素是最先弹出的元素。

以下是一些方法。

序号方法与说明
1booleanempty()
测试此堆栈是否为空。如果堆栈为空,则返回true;如果堆栈包含元素,则返回false。
2对象peek()
返回堆栈顶部的元素,但不删除它。
3对象pop()
返回堆栈顶部的元素,并在此过程中将其删除。
4Object push(Object element)
将元素压入堆栈。元素也被返回。
5int 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

回到顶部