分类描述:Java1.8源码分析

ActomicInteger源码分析

参考文章:掘金 原子整数类。先看成员变量: private static final Unsafe unsafe = Unsafe.getUnsafe(); private static final long valueOffset; static { 源码分析 2019年10月31日 33次浏览

Unsafe源码分析

参考美团技术博客 根据Unsafe的内部实现,Unsafe类是个单例,仅能通过getUnsafe()函数获取实例。 private Unsafe() { } @CallerSensitive public static Unsafe getUnsafe() { 源码分析 2019年10月31日 29次浏览

LinkedHashMap源码分析

参考掘金 LinkedHashMap是链表+哈希表的组合。相关问题: 是否存在有序Map? HashMap的TreeNode是如何实现的? 类图 先看一下LinkedHashMap的类图: 从图中可以看到,LinkedHashMap继承自HashMap并实现了Map接口。 源码分析 2019年10月18日 43次浏览

HashSet源码分析

推荐先看HashMap源码分析 HashSet一般使用在要求元素不能重复或者要达到去重效果的场景。这个类的源码总的来说比较简单,因为其实际是通过一个HashMap来存放数据,实现元素不重复的效果的。 类图 Map和Collection两个类是Java集合框架的两大类型,存放一个元素以及存放键值 源码分析 2019年10月17日 41次浏览

哈希表解决冲突的4种方法

hash算法解决冲突的一般解决办法: 1.开放地址法 所谓的开放定址法就是一旦发生了冲突,就去寻找下一个空的散列地址,只要散列表足够大,空的散列地址总能找到,并将记录存入。 缺点:容易产生堆聚现象,即存入哈希表的记录在表中连成一片。 2.拉链法(链地址法) 每个哈希表节点有一个next指针,同一ha 源码分析 2019年10月15日 32次浏览

[置顶]Java源码分析合集

Java源码分析导航 源码分析 2019年10月15日 68次浏览

HashMap源码分析

转载自美团技术博客,原博客很多图片都不显示了,我稍微修改了下 HashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型。随着JDK(Java Developmet Kit)版本的更新,JDK1.8对HashMap底层的实现进行了优化,例如引入红黑树的数据结构和扩容的优化等。本 源码分析 2019年10月14日 72次浏览