區別:1、HashMap中元素是沒有順序的;TreeMap中所有元素都是有某一固定順序的。 2.HashMap繼承AbstractMap類,是基於hash表實現的;TreeMap繼承SortedMap類,是基於紅黑樹實現的。
相關推薦:《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中文網其他相關文章!