close
偶然看到一個結構TreeMap,所以將它拿來將HashMap來做區別
HashMap再存入key和value的時候時隨機存入的,要拿取的時候是利用key來將相對應的value拿出來,如果想要在Map中新增或刪除,HashMap比較好用
TreeMap會自動將存入的key做排序,若是想要存入Map並有排序的話,TreeMap較好用
Kotlin Example
Step 1:
先新增兩種類型
val hashmap = HashMap<String,String>() val treemap = TreeMap<String,String>()
Step 2:
在hashmap和treemap中我都新增相同的東西
hashmap.put("A","1") hashmap.put("D","4") hashmap.put("C","3") hashmap.put("B","2")
treemap.put("A","1") treemap.put("D","4") treemap.put("C","3") treemap.put("B","2")
Step 3:
再把它印出來驗證有沒有排序
for((key, value) in hashmap){ Log.d(TAG,"Hash Map[$key] = $value") } Log.d(TAG,"Hash Map:"+hashmap)
for((key, value) in treemap){ Log.d(TAG,"Tree Map[$key] = $value") } Log.d(TAG,"Tree Map:"+treemap)
Strp 4:
結果會是
可以很明顯地看到TreeMap是依照順序排好,則HashMap就是依照當初的順序存放的
JAVA Example
因為是一樣的東西,只是換成JAVA所以我就只有把程式碼貼上來
Step 1:
private HashMap<String,String> hashMap = new HashMap<>(); private TreeMap<String,String> treeMap = new TreeMap<>();
Step 2:
hashMap.put("A","1"); hashMap.put("D","4"); hashMap.put("C","3"); hashMap.put("B","2");
treeMap.put("A","1"); treeMap.put("D","4"); treeMap.put("C","3"); treeMap.put("B","2");
Step 3:
for (String name:hashMap.keySet()) { Log.d(TAG,"Hash Map key:"+name); } Log.d(TAG,"Hash Map:"+hashMap);
for (String name:treeMap.keySet()) { Log.d(TAG,"Tree Map key:"+name); } Log.d(TAG,"Tree Map:"+treeMap);
Step 4:
文章標籤
全站熱搜