码界工坊

htykm.cn
人生若只如初见

什么是hashmap,有啥特点?

  众所周知,Hashmap是基于哈希表的 Map 接口的实现,是一个用于存储 Key-Value 键值对的集合。此实现提供了所有可选的映射操作,并允许空值和空键。HashMap 主要通过 key 存储 value 值,并且提供了添加,获取和操作存储 value 的方法。其特点如下:

  1、底层实现是 链表数组,JDK 8 后又加了 红黑树

  2、实现了 Map 全部的方法

  3、key 用 Set 存放,所以想做到 key 不允许重复,key 对应的类(一般是 String)需要重写 hashCode 和 equals 方法

  4、允许空键和空值(但空键只有一个,且放在第一位,知道就行)

  5、元素是无序的,而且顺序会不定时改变(每次扩容后,都会重新哈希,也就是 key 通过哈希函数计算后会得出与之前不同的哈希值,这就导致哈希表里的元素是没有顺序,会随时变化的,这是因为哈希函数与桶数组容量有关,每次结点到了临界值后,就会自动扩容,扩容后桶数组容量都会乘二,而 key 不变,那么哈希值一定会变)

  6、插入、获取的时间复杂度基本是 O(1)(前提是有适当的哈希函数,让元素分布在均匀的位置)

  7、遍历整个 Map 需要的时间与数组的长度成正比(因此初始化时 HashMap 的容量不宜太大)

  8、两个关键因子:初始容量、加载因子

  以上就是什么是hashmap,有啥特点?的内容。

未经允许不得转载 » 本文链接:http://htykm.cn/html/671b4299286.html

推荐文章

  • Kafka与Debian兼容性问题

    目前没有直接关于Kafka与Debian兼容性的具体信息。不过,我可以提供一些关于Kafka的重要更新信息,这些更新可能会间接影响到与Debian系统的兼容性。Kafka 4.0更新概述移除Zooke ...

  • 商标证书丢失怎么办?商标证书补办流程

    商标对一个公司来说是比较重要的,因为一个商标申请下来也是不容易的,那么如果商标注册证书弄丢了怎么办,可以申请补办吗,补办复杂吗,相信大家都会有这样的疑问。接下来,我们来讲解一下商标证书补办。1.商标证 ...

  • 音乐版权怎么购买,大概多少钱啊

    所谓音乐版权其实就是音乐版权的所有权,不同歌曲所要花费的金额也是不一样的,今天,聚名企服为大家详细介绍下,希望能够帮助到你~一、音乐版权签约形式已经出版且发行的音乐作品,需要找到所属公司进行版权购买, ...

  • mp4转gif在线工具使用介绍

    mp4是视频文件常用的格式,而gif是一种包含动画的图片格式,可以很方便的传输和使用。那么mp4转gif怎么操作呢?mp4转gif有什么工具可以使用?下面是mp4转gif在线工具使用。1、迅捷PDF在 ...

  • centos mount命令报错原因

    在使用 CentOS 系统时,mount命令报错可能有多种原因。以下是一些常见的错误及其可能的原因:设备名称错误:确保你指定的设备名称是正确的。例如,如果你要挂载一个硬盘分区,确保你使用的是正确的设备 ...

  • 网速慢怎么办?

    网速慢怎么办?宽带和 WiFi 成为了很多家庭的必备,但是偶尔会遇到上网速度变慢的情况,那么网速慢怎么办呢?导致网速慢的原因很多,需要仔细的检查才能确定原因和解决办法。网速慢怎么办路由器摆放位置不正确 ...

  • 三体相关商标被多方抢注

    近日,三体动画官方微博宣布,《三体》动画将于12月10日开播。企查查APP显示,“三体”“三体人”“面壁者”等多个三体相关商标已被多家公司及多个自然人申请注册,其中,“三体”商标的申请信息共150余条 ...

  • 什么是sas硬盘?sas硬盘和sata硬盘的区别

    什么是sas和sas硬盘?sas硬盘是做什么的?sas硬盘有什么优势?它和sata硬盘有什么区别?下面是关于sas硬盘和sata硬盘的介绍。1、什么是sas和sas硬盘?SAS英文全称(Serial ...