惡補java(十一)-------Stack類的使用,惡補-------stack
package com.gc.Stack;/** * java中stack的使用方法,堆棧是一種"後進先出"(LIFO)的資料結構,只能在一端進行插入(稱為"壓棧")或刪除(稱為"出棧")資料的操作. * Java中,使用java.util.Stack類的構造方法建立對象 * public class Stack extends vector * 構造方法:public Stack()建立一個空Stack * 1.public push(item)把item壓入棧頂.其作用與addElement(item)相同 * 2.public pop移除棧頂對象,並作為函數的值返回該對象 * 3.public peek()查看棧頂對象而不移除它 * 4.public boolean empty()測試堆棧是否為空白 * 5.public int search(Object object)返回對象在堆棧中的位置 */import java.util.Enumeration;import java.util.Stack;/** * 學習Stack的用法 * @author Android將軍 * */public class StackTest {public static void main(String[] args) {//建立堆棧對象Stack stack=new Stack();System.out.println("aaaa,bbbb,cccc三個元素入棧");//向棧中壓入字串aaaastack.push("aaaa");//顯示棧中的所有元素printStack(stack);stack.push("bbbb");printStack(stack);stack.push("cccc");printStack(stack);String s=new String("aaaa");System.out.println("元素aaaa在堆棧的位置"+stack.search(s));s=new String("bbbb");System.out.println("元素bbbb在堆棧的位置"+stack.search(s));System.out.println("aaaa,bbbb,cccc三個元素出棧");System.out.println("元素"+stack.pop()+"出棧");printStack(stack);System.out.println("元素"+stack.pop()+"出棧");printStack(stack);System.out.println("元素"+stack.pop()+"出棧");printStack(stack);}private static void printStack(Stack stack){if(stack.empty()){System.out.println("堆棧是空的,沒有元素");}else{System.out.print("堆棧中的元素:");//得到Stack中的枚舉對象Enumeration items=stack.elements();//顯示枚舉(stack)中的所有元素while(items.hasMoreElements()){System.out.print(items.nextElement()+"");}}System.out.println();//換行}}
執行如下:
轉載請註明出處:http://blog.csdn.net/android_jiangjun/article/details/39183891
java裡Stack類怎使用?
Stack<String> s = new Stack<String>();
s.push("aa"); // 入棧
String str = s.pop(); // 出棧
另外你可以用peek方法擷取棧頂元素,而不彈出棧。用empty判斷棧是否為空白。這些東西請學會自己查詢API
java 中Stack的使用?
使用時,要先建立一個執行個體,如Stack st=new Stack();st.empty()方法是測試堆棧是否為空白st.peek()查看棧頂對象而不移除它st.pop()移除棧頂對象並作為此函數的值返回該對象st.push(E item) 把項壓入棧頂st.search(Object o) 返回對象在棧中的位置,以 1 為基數