HashMap和TreeMap的區別


1、HashMap是通過hash值進行快速查找的;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)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM