HashMap,LinkedHashMap,TreeMap都属于Map

Map 主要用于存储键(key)值(value)对,根据键得到值,因此键不允许键重复,但允许值重复。

HashMap
是一个最常用的Map,它根据键的HashCode 值存储数据,根据键可以直接获取它的值,具有很快的访问速度。HashMap最多只允许一条记录的键为Null;允许多条记录的值为 Null;HashMap不支持线程的同步,即任一时刻可以有多个线程同时写HashMap;可能会导致数据的不一致。如果需要同步,可以用 Collections的synchronizedMap方法使HashMap具有同步的能力。

LinkedHashMap
LinkedHashMap也是一个HashMap,但是内部维持了一个双向链表,可以保持顺序

TreeMap 可以用于排序

HashMap的例子
public static void main(String[] args) {

  Map<String, String> map = new HashMap<String, String>(); map.put("a3", "aa");map.put("a2", "bb"); map.put("b1", "cc");for (Iterator iterator = map.values().iterator(); iterator.hasNext();)     {String name = (String) iterator.next(); System.out.println(name);   }

}

输出:bbccaa

LinkedHashMap例子:

public static void main(String[] args) {

 Map<String, String> map = new LinkedHashMap<String, String>();map.put("a3", "aa");       map.put("a2", "bb"); map.put("b1", "cc"); for (Iterator iterator = map.values().iterator(); iterator.hasNext();) {           String name = (String) iterator.next(); System.out.println(name);     }

}

输出:
aa
bb
cc

总结归纳为:linkedMap在于存储数据你想保持进入的顺序与被取出的顺序一致的话,优先考虑LinkedMap,hashMap键只能允许为一条为空,value可以允许为多条为空,键唯一,但值可以多个。

经本人测试linkedMap键和值都不可以为空

【转载】LinkedHashMap和HashMap区别相关推荐

  1. LinkedHashMap 与 HashMap区别

    2019独角兽企业重金招聘Python工程师标准>>> LinkedHashMap 与 HashMap区别 (非原创) HashMap,LinkedHashMap,TreeMap都属 ...

  2. LinkedHashMap,HashMap,TreeMap

    package com.test;import java.util.*;/*** @author ***** @create 2017-07-10 20:28*/ public class Linke ...

  3. LinkedHashMap和HashMap的比较使用 详解

    由于现在项目中用到了LinkedHashMap,并不是太熟悉就到网上搜了一下. import java.util.HashMap;import java.util.Iterator;import ja ...

  4. HashTable 和HashMap区别

    HashTable 和HashMap区别 HashTable最早的版本是JDK1.1 ,HashMap最早版本是1.2 HashTable继承的是Dictionary抽象类 , HashMap继承的是 ...

  5. LinkedHashMap和HashMap的比较使用

    Map主要用于存储健值对,根据键得到值,因此不允许键重复(重复了覆盖了),但允许值重复. Hashmap 是一个最常用的Map,它根据键的HashCode值存储数据,根据键可以直接获取它的值,具有很快 ...

  6. LinkedHashMap与HashMap 关系

    LinkedHashMap源码分析 1. LinkedHashMap 与 HashMap 的关系 2. LinkedHashMap 双向链表的构建过程 3. LinkedHashMap 删除节点的过程 ...

  7. Java中HashMap、LinkedHashMap和TreeMap区别使用场景

    1. HashMap中k的值没有顺序,常用来做统计. 2.LinkedHashMap吧.它内部有一个链表,保持Key插入的顺序.迭代的时候,也是按照插入顺序迭代,而且迭代比HashMap快. 3. T ...

  8. hashtable与HashMap区别

    看到了很多的面试题集里都有这么一个题:HashMap和Hashtable的区别,自己也看了好几遍了,总是不记得,写下来当是一次笔记吧. 区别一它们的父类不同 public class Hashtabl ...

  9. 【转载】ABAP 字符串 ‘‘ || `` 区别

    转载学习一下,正好用到,谢谢. DATA ts TYPE TABLE OF string. ts = VALUE #( ( 'A' ) ). 会报错的问题,报错为类型冲突. 从而重新理解了char以及 ...

最新文章

  1. 机器学习基础--基本术语
  2. centos7 设置ip地址
  3. 中文邮件营销html模版,怎么制作邮件营销模板?— —邮件格式
  4. java guava_多线程(java和guava两种方式):
  5. python 关联分析算法的包_Python 极简关联分析(购物篮分析)
  6. python萤火虫算法_一种萤火虫算法优化神经网络的短期负荷预测方法与流程
  7. 数据结构-顺序表基本操作-C语言代码
  8. 一起学爬虫(Python) — 02
  9. JavaSE——多线程
  10. 理解计算-从根号 2 到 AlphaGo
  11. 月饼,有毒 | 2016 影响因子
  12. 为什么使用 Kafka?
  13. selenium定位H5表单验证的提示语
  14. 用户、配额管理 、 云主机类型管理 、 镜像管理 、 网络管理 、 安全和实例管理 、 计算节点扩容案例
  15. 关于printf()函数。
  16. 【推荐】智慧油田数字化油井智能入侵监测井口控制系统解决方案合集(共83份,884M)
  17. 如何在windows系统下安装swoole(cgywin环境)
  18. go语言里读写json
  19. 给出一个123 456的矩阵,输出转置矩阵
  20. 怎么用Photoshop做出物体的投影效果出来

热门文章

  1. 记录---基于BigDecimal的特殊的四舍五入
  2. [分布式一致性协议] ------ raft协议的解释与理解
  3. 既约分数蓝桥杯c语言,2021蓝桥杯C++第二届省赛
  4. 在每个运行中运行多个查询_Spring Data JPA的运行原理及几种查询方式
  5. 傲梦python笔试题_python笔试题
  6. 你知道Java的四种引用类型吗
  7. 奥鹏20年12月作业考核(C语言专科),《C语言(专科)》20年12月作业考核【答案100分】...
  8. pythondistutils安装_python – 与distutils / pip一起安装Bash完成
  9. debian java7_Debian 7 和 Debian 8 用户怎样安装 Oracle Java 8
  10. 以下对c语言函数的描述中正确的是,以下对C语言函数的有关描述中,正确的是