
源码学习
文章平均质量分 88
lzz的编码时刻
冲
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
ConcurrentHashMap源码深度解析
ConcurrentHashMap是Java中的线程安全的哈希表实现,它在JDK 1.7和1.8中有着完全不同的实现方式。本文将深入分析JDK 1.8中ConcurrentHashMap的实现原理。使用CAS + synchronized实现同步使用volatile保证可见性使用红黑树优化性能使用多线程协助扩容这些优化使得ConcurrentHashMap成为了一个高性能的线程安全集合类。原创 2025-01-08 10:27:00 · 499 阅读 · 0 评论 -
ArrayList 与 LinkedList 对比与源码解读
特性ArrayListLinkedList底层实现动态数组双向链表随机访问O(1)O(n)插入删除O(n)O(1)内存占用连续内存空间零散内存空间默认容量10无初始容量ArrayList和LinkedList各有优势:ArrayList: 随机访问快,内存占用少LinkedList: 插入删除快,空间利用灵活核心区别:底层数据结构不同操作效率侧重点不同内存占用模式不同使用建议。原创 2025-01-02 10:59:09 · 897 阅读 · 0 评论 -
HashMap源码深度解析(JDK 1.8)
HashMap是Java中最常用的集合类之一,它实现了Map接口,提供了键值对的存储方式。在JDK 1.8中,HashMap的实现采用了数组+链表+红黑树的数据结构,相比于JDK 1.7的数组+链表结构,在性能上有了显著提升。原创 2024-12-26 16:37:29 · 1054 阅读 · 0 评论