Java Stack 類別
#stack(堆疊)是Vector的子類,它實作了一個標準的後進先出的棧。
public class Stack<E>extends Vector<E>
堆疊只定義了預設建構函數,用來建立一個空堆疊。堆疊除了包含由Vector定義的所有方法,也定義了自己的一些方法。
Stack 類別表示後進先出(LIFO)的物件堆疊。
它透過五個運算對類別 Vector 進行了擴展 ,允許將向量視為堆疊。它提供了通常的 push 和 pop 操作,以及取堆疊頂點的 peek 方法、測試堆疊是否為空的 empty 方法、在堆疊中尋找項目並確定到堆疊頂距離的 search 方法。
首次建立堆疊時,它不包含項目。
直接Stack()建立一個空堆疊
範例:
import java.util.*; public class StackDemo { static void showpush(Stack<Integer> st, int a) { st.push(new Integer(a)); System.out.println("push(" + a + ")"); System.out.println("stack: " + st); } static void showpop(Stack<Integer> st) { System.out.print("pop -> "); Integer a = (Integer) st.pop(); System.out.println(a); System.out.println("stack: " + st); } public static void main(String args[]) { Stack<Integer> st = new Stack<Integer>(); System.out.println("stack: " + st); showpush(st, 42); showpush(st, 66); showpush(st, 99); showpop(st); showpop(st); showpop(st); try { showpop(st); } catch (EmptyStackException e) { System.out.println("empty stack"); } } }
結果:
stack: [ ] push(42) stack: [42] push(66) stack: [42, 66] push(99) stack: [42, 66, 99] pop -> 99 stack: [42, 66] pop -> 66 stack: [42] pop -> 42 stack: [ ] pop -> empty stack
以上是java stack什麼意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!