摘要: 1 HashSet源码解析 HashSet也是一种java容器,这里不再赘述hash的概念原理等一大堆东西了,需要在啰嗦一句的是hash表是基于快速存取的角度设计的,也是一种典型的空间换时间的做法 先来看下Set的特点:Set元素无顺序,且元素不可以重复 无顺序,由于散列的缘故;不可重复,HashM 阅读全文
posted @ 2021-11-12 16:38 上善若泪 阅读(65) 评论(0) 推荐(0) 编辑
摘要: 1 LinkedHashMap(jdk1.7之前) 我们知道Map其底层数据存储是一个hash表(数组+单向链表)。接下来我们看一下另一个LinkedHashMap,它是HashMap的一个子类,他在HashMap的基础上维持了一个双向链表(hash表+双向链表),在遍历的时候可以使用插入顺序(先进 阅读全文
posted @ 2021-11-12 12:37 上善若泪 阅读(39) 评论(0) 推荐(0) 编辑
摘要: 1 HashMap源码 前面了解了jdk容器中的两种List,回忆一下怎么从list中取值(也就是做查询),是通过index索引位置对不对,由于存入list的元素时安装插入顺序存储的,所以index索引也就是插入的次序。 Map是这样一种容器,它可以存储两个元素键和值,根据键这个关键字可以明确且唯一 阅读全文
posted @ 2021-11-12 10:34 上善若泪 阅读(43) 评论(0) 推荐(0) 编辑