Decode360's Blog

          業(yè)精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 ::  :: 管理 ::
            397 隨筆 :: 33 文章 :: 29 評論 :: 0 Trackbacks
          堆棧--Stack類學習
          ?
          ??? 最近學習數(shù)據(jù)結(jié)構(gòu)的時候,用java實現(xiàn)了一下堆棧,就是用stack這個類,在這里記錄一下學習過程。
          ?
          ?
          Class Stack<E>
          						
          								java.lang.Object
          						
          						
          						
          								java.util.AbstractCollection
          						
          						<E>
               └ 
          						
          								java.util.AbstractList
          						
          						<E>
                    └ 
          						
          								java.util.Vector
          						
          						<E>
                        └ java.util.Stack<E>
          				
          ?
          ?
          Method Summary
          boolean empty ()
          ????????? Tests if this stack is empty.
          ? E peek ()
          ????????? Looks at the object at the top of this stack without removing it from the stack.
          ? E pop ()
          ????????? Removes the object at the top of this stack and returns that object as the value of this function.
          ? E push ( E item)
          ????????? Pushes an item onto the top of this stack.
          int search ( Object o)
          ????????? Returns the 1-based position where an object is on this stack.
          ?
          ?
          ?
          另外還繼承了java.util.Vector<E>中的基本方法,常見的用法如下所示:
          ?
          ?
          import java.util.*;
          ?
          public class kkk{
          public static void main(String args[]){
          ? int m = 1;
          ? Stack<Integer> a = new Stack<Integer>();
          ?
          ? a.push(m);?? //壓入1
          ? a.push(m+1); //壓入2
          ? a.push(m+2); //壓入3
          ? a.push(m+3); //壓入4
          ? a.push(m+4); //壓入5
          ??? System.out.println(a.push(m+5)); //壓入6,并返回當前值
          ?
          ??? System.out.println(a.empty());?? //判斷棧是否為空,為空則TRUE
          ??? System.out.println(a.isEmpty()); //判斷棧是否為空,為空則TRUE
          ???
          ? System.out.println(a.size());???? //返回當前棧長度
          ? System.out.println(a.toString()); //返回當前棧的內(nèi)容
          ?
          ? System.out.println(a.lastElement());? //返回當前棧中的最后一個元素6
          ? System.out.println(a.firstElement()); //返回當前棧中的第一個元素1
          ?
          ? System.out.println(a.peek()); //返回當前值6
          ? System.out.println(a.pop());? //返回當前值并壓出6
          ? System.out.println(a.pop());? //返回當前值并壓出5
          ?
          ? System.out.println(a.search(3));
          ? //搜索“3”在棧中出現(xiàn)的位置,頂端為1,其余依次累加,若有多個則返回第1個的位置
          ?
          ? a.add(m+9); //壓入10,跟push一樣的效果
          ? a.clear(); //清空棧
          ?
          ??? System.out.println(a.empty());?? //判斷棧是否為空,為空則TRUE
          ??? System.out.println(a.isEmpty()); //判斷棧是否為空,為空則TRUE
          ?
          }
          }
          ?
          ?
          ?
          posted on 2008-12-01 22:42 decode360 閱讀(178) 評論(0)  編輯  收藏 所屬分類: 04.Java

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           
          主站蜘蛛池模板: 云梦县| 永年县| 内丘县| 金华市| 和林格尔县| 恩平市| 镇巴县| 宁城县| 武宁县| 金华市| 台前县| 寻乌县| 商水县| 胶南市| 宝山区| 额尔古纳市| 崇礼县| 永登县| 平邑县| 遂昌县| 台北县| 若羌县| 永福县| 新沂市| 普洱| 三亚市| 海兴县| 遂溪县| 甘泉县| 鄂托克前旗| 湟源县| 绍兴市| 光山县| 邵东县| 临夏市| 三门县| 原阳县| 邵阳县| 周口市| 滨州市| 三门峡市|