首页 > 编程语言 > 详细

Java集合中Map的介绍

时间:2021-01-18 22:13:11      阅读:28      评论:0      收藏:0      [点我收藏+]
  • 什么是Map数据结构
    • 底层就是一个数组结构,数组中的每一项又是一个链表,即数组和链表的结合体
    • table是数组,数组的元素是Entry
    • Entry元素是一个key-value键值对,它持有一个指向下一个Entry元素的引用,table数组的每个Entry元素同时也作为当前Entry链表的首节点,也指向了该链表的下一个Entry元素
      技术分享图片
  • 常见的实现类
    • HashMap
      • 一个散列桶(数组和链表),它存储的内容是键值对(key-value)映射
      • 是基于hash的原理,使用put(key, value)存储对象到HashMap中,使用get(key)从HashMap中获取对象。当put()方法传递键和值时,会先对键调用hashCode()方法,计算并返回的hashCode是用于找到Map数组的bucket位置来存储Entry对象的,是非线程安全的,所以HashMap操作速度很快
    • TreeMap
      • 在数据的存储过程中,能够自动对数据进行排序,实现了SortedMap接口,它是有序的集合
      • TreeMap使用的存储结构是平衡二叉树,也称为红黑树
      • 默认排序规则:使用key的字典顺序来排序(升序),也可以自定义排序规则,要实现Comparator接口

Java集合中Map的介绍

原文:https://www.cnblogs.com/Gen2021/p/14294940.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!