美文网首页我爱编程
Java中Map集合概述

Java中Map集合概述

作者: Briarbear | 来源:发表于2018-05-26 21:37 被阅读0次

本文主要为Java中Map集合的概述,至于具体类的实现,未作详细讲解,具体实现原理可参看相关链接以及JDK源码

[TOC]

1. Map集合

  • java为数据结构中的映射定义了一个接口java.util.Map;它有四个实现类,分别是HashMapHashtableLinkedHashMapTreeMap

  • Map主要用于存储健值对,根据键得到值,因此不允许键重复(重复了覆盖了),但允许值重复

  • Map架构

    image

2. HashMap

  • 最常用的Map
  • 根据键的HashCode 值存储数据,根据键可以直接获取它的值,具有很快的访问速度,遍历时,取得数据的顺序是完全随机的
  • HashMap最多只允许一条记录的键为Null;允许多条记录的值为 Null
  • HashMap不支持线程的同步,即任一时刻可以有多个线程同时写HashMap;可能会导致数据的不一致。如果需要同步,可以用 CollectionssynchronizedMap方法使HashMap具有同步的能力,或者使用ConcurrentHashMap
  • HashMap的底层实现基于数组(动态可扩展)+链表(处理冲突)

3. Hashtable

  • 它继承自Dictionary
  • 它不允许记录的键或者值为空
  • 它支持线程的同步,Hashtable在写入时会比较慢

4. LinkedHashMap

  • 继承HashMap,使用双向链表来维护key-value的次序,迭代顺序与插入的顺序保持一致
  • 迭代访问性能更好

5. TreeMap

  • 实现SortMap接口
  • 红黑树数据结构,每个key-value对即作为一个红黑树节点,根据key排序,默认是按键值的升序排序

6. 其他

  • 再次强调,SetMap的关系十分密切,Java源码就是先实现了HashMapTreeMap等集合,然后通过包装一个所有value都为nullMap集合实现Set集合类

相关链接

相关文章

  • Java中Map集合概述

    本文主要为Java中Map集合的概述,至于具体类的实现,未作详细讲解,具体实现原理可参看相关链接以及JDK源码 [...

  • java集合详解

    java集合概述 Java 集合可分为 Collection 和 Map 两种体系 Collection接口:单列...

  • Java集合总结

    Java集合总结 概述 Java集合类主要由两个接口派生而出: Collection Map 这两个是Java集合...

  • 四、Java集合

    1. Java集合概述 Java集合主要由两个接口派生而出,Collection和Map|---Collectio...

  • HashMap源码分析

    一、Map概述 首先,在Java集合中,Map是一种以key-value键值对形式保存存储数据的特殊集合类。而Ha...

  • 四 集合 ——第八节 Map集合,HashMap详解

    1、Map集合概述 和Collection集合是两套体系,Collection集合是单列集合java.util.M...

  • Map集合Map<Integer,String> m

    01Map集合概述 A:Map集合概述:我们通过查看Map接口描述,发现Map接口下的集合与Collection接...

  • Map接口

    01Map集合概述 A:Map集合概述:我们通过查看Map接口描述,发现Map接口下的集合与Collection接...

  • java集合类总结

    Java集合概述 Java提供的众多集合类由两大接口衍生而来: Collection 接口和 Map 接口。为了更...

  • JavaSE总结(7)Map

    Collection中的集合称为单列集合,Map中的集合称为双列集合。 一、 java.util.Map...

网友评论

    本文标题:Java中Map集合概述

    本文链接:https://www.haomeiwen.com/subject/tjlvjftx.html