java 集合區別
TreeMap和TreeSet的區別
相同點:多線程
- TreeMap和TreeSet都是有序的集合,也就是說他們存儲的值都是排好序的。
- TreeMap和TreeSet都是非同步集合,所以他們不能在多線程之間共享,不過可使用方法Collections.synchroinzedMap()來實現同步
- 運行速度都要比Hash集合慢,他們內部對元素的操做時間複雜度爲O(logN),而HashMap/HashSet則爲O(1)。
不一樣點:線程
- 最主要的區別就是TreeSet和TreeMap分別實現Set和Map接口
- TreeSet只存儲一個對象,而TreeMap存儲兩個對象Key和Value(僅僅key對象有序)
- TreeSet中不能有重複對象,而TreeMap中能夠存在
- TreeMap的底層採用紅黑樹的實現,完成數據有序的插入,排序。
歡迎關注本站公眾號,獲取更多信息