您好,登錄后才能下訂單哦!
本篇內容主要講解“java都有哪些容器”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“java都有哪些容器”吧!
java容器有:ArrayList、LinkedList、Vector、HashSet、LinkedHashSet、TreeSet、LinkedHashMap、TreeMap、ConcurrentHashMap、Hashtable等等。
本教程操作環境:windows7系統、java8版、DELL G3電腦。
什么是容器?
容器是指用以容納物料并以殼體為主的基本裝置。
java容器類類庫的用途是"保存對象"。摘自: “Thinking in Java”.
Java集合類是一種特別有用的工具類,可以用于存儲數量不等的對象,并可以實現常用的數據結構,如棧,隊列等.Java集合就像一種容器,可以把多個對象(實際上是對象的引用,但習慣上都稱對象) “丟進” 該容器中. 摘自: “瘋狂Java講義”.
java中的容器也叫集合,是專門用來管理對象的對象. 這個是我說的.
Java 容器都有哪些?
Java 容器分為 Collection 和 Map 兩大類,其下又有很多子類,如下所示是Collection和Map的繼承體系:
具體如下結構:
Collection
HashSet
LinkedHashSet
TreeSet
ArrayList
LinkedList
Vector
Stack
List
Set
Map
LinkedHashMap
HashMap
TreeMap
ConcurrentHashMap
Hashtable
ArrayList和LinkList的區別?
ArrayList(數組結構):
優點:get和set調用花費常數時間,也就是查詢的速度快
缺點:新項的插入和現有項的刪除代價昂貴,也就是添加刪除的速度慢
LinkedList(鏈表結構):
優點:新項的插入和和現有項的刪除開銷很小,即添加和刪除的速度快
缺點:對get和set的調用花費昂貴,不適合做查詢
List、Set、Map 之間的區別是什么?
List、Set、Map 的區別主要體現在兩個方面:元素是否有序、是否允許元素重復。
三者之間的區別,如下表:
HashMap 和 Hashtable 有什么區別?
存儲:HashMap 運行 key 和 value 為 null,而 Hashtable 不允許。
線程安全:Hashtable 是線程安全的,而 HashMap 是非線程安全的。
推薦使用:在 Hashtable 的類注釋可以看到,Hashtable 是保留類不建議使用,推薦在單線程環境下使用 HashMap 替代,如果需要多線程使用則用 ConcurrentHashMap 替代。
Comparable和Comparator區別?
Comparable接口
實現Comparable接口類表示這個類型的對象可以進行比較大小的。 這種可以比較大小的對象可以進行自然排序。
Comparator接口
比較器用于實現對象任意屬性進行比較大小。
在排序時候可以通過指定屬性比較器實現任意屬性排序。
在排序時候Comparable接口用于進行自然排序,而Comparator接口進行自定義排序,自定義排序更加靈活方便而常用。
設計上Comparable不推薦使用,因為對程序本身具有侵入性。
到此,相信大家對“java都有哪些容器”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。