Java中的map集合顺序如何与添加顺序一样

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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());  
        }  
    }  
  
}  

 

技术图片

 

以上是关于Java中的map集合顺序如何与添加顺序一样的主要内容,如果未能解决你的问题,请参考以下文章

JAVA中几种集合(List、Set和Map)的区别

java基础35 双例集合Map及其常用方法

Java基础中map接口和实现类

set集合和list集合的区别

Java之集合Map

java之集合类