首頁 > Java > Java基礎 > java中treemap和hashmap的差別是什麼?

java中treemap和hashmap的差別是什麼?

青灯夜游
發布: 2020-11-11 17:12:56
原創
31655 人瀏覽過

區別:1、HashMap中元素是沒有順序的;TreeMap中所有元素都是有某一固定順序的。 2.HashMap繼承AbstractMap類,是基於hash表實現的;TreeMap繼承SortedMap類,是基於紅黑樹實現的。

java中treemap和hashmap的差別是什麼?

相關推薦:《Java影片教學

TreeMap和HashMap的區別

Map:在數組中是透過數組下標來對其內容進行索引的,而Map是透過物件來對物件進行索引的,用來索引的物件叫鍵key,其對應的物件叫做value;

1、HashMap是透過hashcode()對其內容進行快速尋找的;HashMap中的元素是沒有順序的;

    TreeMap中所有的元素都是有某一固定順序的,如果需要得到一個有序的結果,就應該使用TreeMap;

#2、HashMap和TreeMap都不是線程安全的;

##3 、HashMap繼承AbstractMap類別;覆寫了hashcode() 和equals() 方法,以確保兩個相等的映射返回相同的哈希值;

     TreeMap繼承SortedMap類別;他保持鍵的有序順序;

4、HashMap:基於hash表實現的;使用HashMap要求添加的鍵類別明確定義了hashcode() 和equals() (可以重寫該方法);為了優化HashMap的空間使用,可以調優初始容量和負載因子;

     TreeMap:基於紅黑樹實現的;TreeMap就沒有調優選項,因為紅黑樹總是處於平衡的狀態;

#5、HashMap:適用於Map插入,刪除,定位元素;

     TreeMap:適用於按自然順序或自訂順序遍歷鍵(key);

更多程式相關知識,請造訪:

程式設計學習網站! !

以上是java中treemap和hashmap的差別是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板