Java中的map集合順序如何與添加順序一樣


一般使用map用的最多的就是hashmap,但是hashmap里面的元素是不按添加順序的,那么除了使用hashmap外,還有什么map接口的實現類可以用呢?

這里有2個,treeMap和linkedHashMap,但是,要達到我們的要求:按添加順序保存元素的,就只有LinkedHashMap。

下面看運行的代碼。

package com.lxk.collectionTest;  
  
import com.google.common.collect.Maps;  
  
import java.util.Map;  
  
/** 
 * 測試Map是否有序的區別 
 * <p> 
 * Created by lxk on 2017/5/24 
 */  
public class OrderedMapTest {  
    public static void main(String[] args) {  
        Map<String, Integer> hashMap = Maps.newHashMap();  
        Map<String, Integer> treeMap = Maps.newTreeMap();  
        Map<String, Integer> linkedHashMap = Maps.newLinkedHashMap();  
        System.out.println("--------------test hashMap");  
        testMap(hashMap);  
        System.out.println("--------------test treeMap");  
        testMap(treeMap);  
        System.out.println("--------------test linkedHashMap");  
        testMap(linkedHashMap);  
    }  
  
    private static void testMap(Map<String, Integer> map) {  
        map.put("asd", 1);  
        map.put("2das", 2);  
        map.put("3das", 3);  
        map.put("4das", 4);  
        for (Map.Entry<String, Integer> entry : map.entrySet()) {  
            System.out.println(entry.getKey() + ":" + entry.getValue());  
        }  
    }  
  
}  

 

 


免責聲明!

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



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