关键词搜索

源码搜索 ×
×

(Java)一篇文章带你搞定 LinkedHashMap 与 HashMap 的区别

发布2020-09-13浏览1164次

详情内容

已经学习过:Java 中的 Map 接口
了解了 HashMap 是无序存放,但是有些情况下我们想要有顺序的存储 key-value ,这时就用到了 LinkedHashMap

已经知道了 HashMap 是无序存储:

public class Test {
    public static void main(String[] args) {
        Map<String, String> map = new HashMap<String, String>();
        map.put("3", "yolo_3");
        map.put("https://files.jxasp.com/image/2", "yolo_2");
        map.put("1", "yolo_1");
        Set<Map.Entry<String, String>> set = map.entrySet();
        Iterator<Map.Entry<String, String>> iterator = set.iterator();
        while (iterator.hasNext()) {
            Map.Entry<String, String> next = iterator.next();
            System.out.println(next.getKey() + " --> " + next.getValue());
        }
    }
}

    也就是结果的输出,并不是按照输入的顺序进行打印:

    在这里插入图片描述
    这是,我们使用 LinkedHashMap 进行同样的存储操作:

    在这里插入图片描述
    可以看到这里 LinkedHashMap 的存储顺序默认是插入顺序

    其实通过源码也可以发现:LinkedHashMap 继承了 HashMap,所以 HashMap 的方法,LinkedHashMap 也是都适用的。

    在这里插入图片描述

    相关技术文章

    点击QQ咨询
    开通会员
    返回顶部
    ×
    微信扫码支付
    微信扫码支付
    确定支付下载
    请使用微信描二维码支付
    ×

    提示信息

    ×

    选择支付方式

    • 微信支付
    • 支付宝付款
    确定支付下载