这篇文章记录一下hashmap的学习过程,文章并没有涉及hashmap整个源码,只学习一些重要部分,如有表述错误还请在评论区指出~ 1.基本概念 Hashmap采用key算hash映射到具体的value,因此查找效率为o(1),为防止hash冲突,在数组的基础上加入链表.红黑树,为无序非线程安全的存储结构 jdk1.8之前采用以下方式存储数据: 左边实际上就是一个数组,右边则是key值相同的元素放到同一个链表中(图片侵删) 但是这种数组加单链表也存在问题,即单链表长度过长时,搜索值将耗费时间复杂…