商城首页欢迎来到中国正版软件门户

您的位置:首页 > 编程开发 >LinkedHashMap和HashMap在Java中有什么区别?

LinkedHashMap和HashMap在Java中有什么区别?

  发布于2023-04-29 阅读(0)

扫一扫,手机访问

1、说明

Map基本上可以使用HashMap,但是HashMap有一个问题,那就是迭代HashMap的顺序不是HashMap放置的顺序,就是无序。HashMap的这个缺点往往会带来麻烦,因为有些场景我们期待一个有序的Map,这就是LinkedHashMap。

2、区别实例

public static void main(String[] args) {
    Map<String, String> map = new LinkedHashMap<String, String>();
    map.put("apple", "苹果");
    map.put("watermelon", "西瓜");
    map.put("banana", "香蕉");
    map.put("peach", "桃子");
 
    Iterator iter = map.entrySet().iterator();
    while (iter.hasNext()) {
        Map.Entry entry = (Map.Entry) iter.next();
        System.out.println(entry.getKey() + "=" + entry.getValue());
    }
}

可以看到,在使用上,LinkedHashMap和HashMap的区别就是LinkedHashMap是有序的。 上面这个例子是根据插入顺序排序。LinkedHashMap还有一个参数决定是否在此基础上再根据访问顺序(get,put)排序。

Java是什么

Java是一门面向对象编程语言,可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序。

本文转载于:https://www.yisu.com/zixun/579154.html 如有侵犯,请联系admin@zhengruan.com删除

热门关注