隨筆-7  評論-24  文章-102  trackbacks-0
          原文轉自: http://www.diybl.com/course/3_program/java/javajs/2007917/71621.html


          前言        線性表,鏈表,哈希表是常用的數據結構,在進行Java開發時,JDK已經為我們提供了一系列相應的類來實現基本的數據結構。這些類均在java.util包中。本文試圖通過簡單的描述,向讀者闡述各個類的作用以及如何正確使用這些類。   
           
          Collection 
          ├List 
          │├LinkedList 
          │├ArrayList 
          │└Vector 
          │ └Stack 
          └Set 

          Map 
          ├Hashtable 
          ├HashMap 
          └WeakHashMap




          Collection接口  Collection是最基本的集合接口,一個Collection代表一組Object,即Collection的元素(Elements)。一些Collection允許相同的元素而另一些不行。一些能排序而另一些不行。Java  SDK不提供直接繼承自Collection的類,Java SDK提供的類都是繼承自Collection的“子接口”如List和Set。 
          所有實現Collection接口的類都必須提供兩個標準的構造函數:無參數的構造函數用于創建一個空的Collection,有一個Collection參數的構造函數用于創建一個新的Collection,這個新的Collection與傳入的Collection有相同的元素。后一個構造函數允許用戶復制一個Collection。 
          如何遍歷Collection中的每一個元素?不論Collection的實際類型如何,它都支持一個iterator()的方法,該方法返回一個迭代子,使用該迭代子即可逐一訪問Collection中每一個元素。典型的用法如下: 
          Iterator  it  =  collection.iterator();  //  獲得一個迭代子 
          while(it.hasNext())  { 
          Object  obj  =  it.next();  //  得到下一個元素 

          由Collection接口派生的兩個接口是List和Set。 
          List接口
          LinkedList類
          Vector類
          Stack 類
          Set接口
          ArrayList類



          Map接口 請注意,Map沒有繼承Collection接口,Map提供key到value的映射。一個Map中不能包含相同的key,每個key只能映射一個value。Map接口提供3種集合的視圖,Map的內容可以被當作一組key集合,一組value集合,或者一組key-value映射。
          Hashtable類
          HashMap類
          WeakHashMap類


          總結如果涉及到堆棧,隊列等操作,應該考慮用List,對于需要快速插入,刪除元素,應該使用LinkedList,如果需要快速隨機訪問元素,應該使用ArrayList。
          posted on 2008-09-04 15:06 黃小二 閱讀(250) 評論(0)  編輯  收藏 所屬分類: J2SE
          主站蜘蛛池模板: 武穴市| 阿拉善右旗| 博兴县| 屏南县| 九龙县| 枝江市| 贵南县| 库伦旗| 漯河市| 乳源| 正镶白旗| 四川省| 彩票| 积石山| 枞阳县| 磴口县| 通河县| 界首市| 四子王旗| 灵寿县| 衡阳县| 庆云县| 东山县| 昔阳县| 金秀| 昭平县| 太湖县| 丹凤县| 滨州市| 济宁市| 珲春市| 延长县| 磐安县| 玉树县| 永泰县| 新兴县| 阜新| 古交市| 五河县| 宝丰县| 随州市|