
- Java.util 包類
- Java.util - 首頁
- Java.util - ArrayDeque
- Java.util - ArrayList
- Java.util - Arrays
- Java.util - BitSet
- Java.util - Calendar
- Java.util - Collections
- Java.util - Currency
- Java.util - Date
- Java.util - Dictionary
- Java.util - EnumMap
- Java.util - EnumSet
- Java.util - Formatter
- Java.util - GregorianCalendar
- Java.util - HashMap
- Java.util - HashSet
- Java.util - Hashtable
- Java.util - IdentityHashMap
- Java.util - LinkedHashMap
- Java.util - LinkedHashSet
- Java.util - LinkedList
- Java.util - ListResourceBundle
- Java.util - Locale
- Java.util - Observable
- Java.util - PriorityQueue
- Java.util - Properties
- Java.util - PropertyPermission
- Java.util - PropertyResourceBundle
- Java.util - Random
- Java.util - ResourceBundle
- Java.util - ResourceBundle.Control
- Java.util - Scanner
- Java.util - ServiceLoader
- Java.util - SimpleTimeZone
- Java.util - Stack
- Java.util - StringTokenizer
- Java.util - Timer
- Java.util - TimerTask
- Java.util - TimeZone
- Java.util - TreeMap
- Java.util - TreeSet
- Java.util - UUID
- Java.util - Vector
- Java.util - WeakHashMap
- Java.util 包擴充套件
- Java.util - 介面
- Java.util - 異常
- Java.util - 列舉
- Java.util 有用資源
- Java.util - 有用資源
- Java.util - 討論
Java Stack 類
介紹
Stack 是 Vector 的一個子類,它實現了標準的後進先出棧。
Stack 只定義了預設建構函式,它建立一個空棧。Stack 包含 Vector 定義的所有方法,並添加了一些自己的方法。
Java Stack 類表示物件的後進先出 (LIFO) 棧。
當第一次建立棧時,它不包含任何專案。
在這個類中,最後插入的元素首先被訪問。
類宣告
以下是java.util.Stack 類的宣告:
public class Stack<E> extends Vector<E>
類建構函式
序號 | 建構函式 & 描述 |
---|---|
1 | Stack() 此建構函式建立一個空棧。 |
類方法
序號 | 方法 & 描述 |
---|---|
1 | boolean empty()
此方法測試此棧是否為空。 |
2 | E peek()
此方法檢視此棧頂部的物件,而不將其從棧中移除。 |
3 | E pop()
此方法移除此棧頂部的物件,並將其作為此函式的值返回。 |
4 | E push(E item)
此方法將一個專案壓入此棧的頂部。 |
5 | int search(Object o)
此方法返回物件在此棧上的基於 1 的位置。 |
繼承的方法
此類繼承自以下類的方法:
- java.util.Vector
- java.util.Collection
- java.util.Object
- java.util.List
示例
以下程式說明了 Stack 集合支援的幾種方法:
import java.util.*; public class StackDemo { static void showpush(Stack st, int a) { st.push(new Integer(a)); System.out.println("push(" + a + ")"); System.out.println("stack: " + st); } static void showpop(Stack 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 st = new Stack(); 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
廣告