Java集合常用類特點整理

來源:互聯網
上載者:User

標籤:show   add   table   操作   ref   判斷   整理   null   二叉樹   

集合的結構如所示:


集合的兩個頂級介面分別為:Collection和Map

Collection下有兩個比較常用的介面分別是List(列表)和Set(集),其中List可以儲存重複元素,元素是有序的(存取順序一致),可以通過List腳標來擷取指定元素;而Set不可以有重複元素,元素是無序的。

List介面中,比較常用的類有三個:ArrayList、Vactor、LinkedList。

ArrayList :線程不安全的,對元素的查詢速度快。

Vector :安全執行緒的,多了一種取出元素的方式:枚舉(Enumeration),但已被ArrayList取代。

LinkedList :鏈表結構,對元素的增刪速度很快。

Set介面中,比較常用的類有兩個:HashSet、TreeSet:

HashSet:要保證元素唯一性,需要覆蓋掉Object中的equals和hashCode方法(因為底層是通過這兩個方法來判斷兩個元素是否是同一個)。

     

TreeSet:以二叉樹的結構對元素進行儲存,可以對元素進行排序。

      排序的兩種方式:

             1、元素自身具備比較功能,元素實現Comparable介面,覆蓋compareTo方法。

             2、建立一個比較子對象,該對象實現Comparator介面,覆蓋compare方法,並將該對象作為參數傳給TreeSet的建構函式(可以用匿名內部類)。

 

Map介面其特點是:元素是成對出現的,以鍵和值的形式體現出來,鍵要保證唯一性:常用類有:HashMap,Hashtable ,TreeMap。

HashMap:線程不安全等的,允許存放null鍵null值。

Hashtable:安全執行緒的,不允許存放null鍵null值。

TreeMap:可以對鍵進行排序(要實現排序方法同TreeSet)。

Collection和Map兩個介面對元素操作的區別:

存入元素:

Collection介面下的實作類別通過add方法來完成,而Map下是通過put方法來完成。

取出元素:

Collection介面下:List介面有兩種方式:1、get(腳標);2、通過Iterator迭代方式擷取元素;而Vactor多了一種枚舉(Enumeration)的方式。Set介面通過迭代的方式擷取元素。

Map介面下:先通地keySet擷取鍵的系列,然後通過該系列使用Iterator迭代方式擷取元素值。

Java集合常用類特點整理

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.