首頁 >Java >Java基礎 >java容器都有哪些

java容器都有哪些

青灯夜游
青灯夜游原創
2021-07-23 17:34:0325981瀏覽

java容器有:ArrayList、LinkedList、Vector、HashSet、LinkedHashSet、TreeSet、LinkedHashMap、TreeMap、ConcurrentHashMap、Hashtable等等。

java容器都有哪些

本教學操作環境:windows7系統、java8版、DELL G3電腦。

什麼是容器?

容器是指用以容納物料並以殼體為主的基本裝置。

java容器類別庫的用途是"保存物件"。摘自: “Thinking in Java”.

Java集合類別是一種特別有用的工具類別,可以用於儲存數量不等的物件,並且可以實現常用的資料結構,如堆疊,佇列等. Java集合就像一種容器,可以把多個物件(實際上是物件的引用,但習慣上都稱物件) 「丟進」 這個容器中. 摘自: “瘋狂Java講義”.

# java中的容器也叫集合,是專門用來管理物件的物件. 這個是我說的.

Java 容器都有哪些?

  • Java 容器分為Collection 和Map 兩大類,其下又有很多子類,如下所示是Collection和Map的繼承體系:

java容器都有哪些
java容器都有哪些

如下結構如下:

  • Collection
    • List
      • ArrayList
      • LinkedList
      • Vector
      • Stack
    • ##Set
      • HashSet
      • #LinkedHashSet
      • TreeSet
    • #HashMap
      • LinkedHashMap
    • HashMap
    • LinkedHashMap
    • TreeMap
  • ConcurrentHashMap

Hashtable

##ArrayList和LinkList的差別?

  • ArrayList(陣列結構)

  • 優點:get和set呼叫花費常數時間,也就是查詢的速度快

缺點:新項目的插入和現有項目的刪除代價昂貴,也就是新增刪除的速度慢

  • LinkedList(鍊錶結構)

  • 優點:新項目的插入和和現有項目的刪除開銷很小,即新增和刪除的速度快

缺點:對get和set的呼叫花費昂貴,不適合做查詢

List、Set、Map 之間的差異是什麼?


java容器都有哪些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影片教學#######

以上是java容器都有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn