Java
文章平均质量分 88
李楠琳
这个作者很懒,什么都没留下…
展开
-
Java学习之HashMap源码剖析 - 图文分析(附面试中常见问题)
HashMap原理其本质就是那个我们习以为常的hash算法。 Hash算法 自己先来设计一个普通的hash算法: 1.设计数组的长度(length):8。通常情况下是设计成素数,因为理论上证明取素数发生冲突的概率要小于合数。但是HashMap中数组长度设计为零16,2^ 4,是一个合数,主要是为了优化后续的计算过程;而HashTable初始化长度为11,为素数。 2. 设计一个hash算法:hash = key % length 。这真...原创 2021-02-03 13:36:34 · 427 阅读 · 4 评论 -
Java学习之ArrayList原理剖析
ArrayList底层是基于数组实现的,其封装的各种方法:Add、remove、get、set等,其本质就是对数组的基本操作。 public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.Serializable ArrayList继承自AbstractList类,实现了RandomAccess、Clone原创 2021-01-29 12:39:20 · 347 阅读 · 2 评论