/** * @param args */ @SuppressWarnings({ "rawtypes", "unchecked" }) public static void main(String[] args) { Stack stack = new Stack(); // 建立堆棧對象 System.out.println("11111, absdder, 29999.3 三個元素入棧"); stack.push(new Integer(11111)); //向 棧中 壓入整數 11111 printStack(stack); //顯示棧中的全部元素 stack.push("absdder"); //向 棧中 壓入 printStack(stack); //顯示棧中的全部元素 stack.push(new Double(29999.3)); //向 棧中 壓入 printStack(stack); //顯示棧中的全部元素 String s = new String("absdder"); System.out.println("元素absdder在堆棧的位置"+stack.search(s)); System.out.println("元素11111在堆棧的位置"+stack.search(11111)); System.out.println("11111, absdder, 29999.3 三個元素出棧"); //彈出 棧頂元素 System.out.println("元素"+stack.pop()+"出棧"); printStack(stack); //顯示棧中的全部元素 System.out.println("元素"+stack.pop()+"出棧"); printStack(stack); //顯示棧中的全部元素 System.out.println("元素"+stack.pop()+"出棧"); printStack(stack); //顯示棧中的全部元素 } @SuppressWarnings("rawtypes") private static void printStack(Stack<Integer> stack ){ if (stack.empty()) System.out.println("堆棧是空的,沒有元素"); else { System.out.print("堆棧中的元素:"); Enumeration items = stack.elements(); // 獲得 stack 中的枚舉對象 while (items.hasMoreElements()) //顯示枚舉(stack ) 中的全部元素 System.out.print(items.nextElement()+" "); } System.out.println(); //換行 }