标签:源码
-
第15篇:死磕 java集合之ArrayList源码分析
欢迎关注我的公众号“彤哥读源码”,查看更多源码系列文章, 与彤哥一起畅游源码的海洋。 简介 ArrayList是一种以数组实现的List,与数组相比,它具有动态扩展的能力,因此也可…
-
第14篇:死磕 java集合之CopyOnWriteArrayList源码分析
欢迎关注我的公众号“彤哥读源码”,查看更多源码系列文章, 与彤哥一起畅游源码的海洋。 简介 CopyOnWriteArrayList是ArrayList的线程安全版本,内部也是通过…
-
第13篇:死磕 java集合之HashMap源码分析
欢迎关注我的公众号“彤哥读源码”,查看更多源码系列文章, 与彤哥一起畅游源码的海洋。 简介 HashMap采用key/value存储结构,每个key对应唯一的value,查询和修改…
-
第12篇:死磕 java集合之LinkedHashMap源码分析
欢迎关注我的公众号“彤哥读源码”,查看更多源码系列文章, 与彤哥一起畅游源码的海洋。 简介 LinkedHashMap内部维护了一个双向链表,能保证元素按插入的顺序访问,也能以访问…
-
第11篇:死磕 java集合之WeakHashMap源码分析
欢迎关注我的公众号“彤哥读源码”,查看更多源码系列文章, 与彤哥一起畅游源码的海洋。 简介 WeakHashMap是一种弱引用map,内部的key会存储为弱引用,当jvm gc的时…
-
第10篇:死磕 java集合之TreeMap源码分析(一)- 内含红黑树分析全过程
欢迎关注我的公众号“彤哥读源码”,查看更多源码系列文章, 与彤哥一起畅游源码的海洋。 简介 TreeMap使用红黑树存储元素,可以保证元素按key值的大小进行遍历。 继承体系 Tr…
-
第9篇:死磕 java集合之TreeMap源码分析(二)- 内含红黑树分析全过程
欢迎关注我的公众号“彤哥读源码”,查看更多源码系列文章, 与彤哥一起畅游源码的海洋。 插入元素 插入元素,如果元素在树中存在,则替换value;如果元素不存在,则插入到对应的位置,…
-
第8篇:死磕 java集合之TreeMap源码分析(三)- 内含红黑树分析全过程
欢迎关注我的公众号“彤哥读源码”,查看更多源码系列文章, 与彤哥一起畅游源码的海洋。 删除元素 删除元素本身比较简单,就是采用二叉树的删除规则。 (1)如果删除的位置有两个叶子节点…
-
第7篇:死磕 java集合之TreeMap源码分析(四)-内含彩蛋
欢迎关注我的公众号“彤哥读源码”,查看更多源码系列文章, 与彤哥一起畅游源码的海洋。 二叉树的遍历 我们知道二叉查找树的遍历有前序遍历、中序遍历、后序遍历。 (1)前序遍历,先遍历…
-
第6篇:如何阅读jdk源码?
简介 这篇文章主要讲述jdk本身的源码该如何阅读,关于各种框架的源码阅读我们后面再一起探讨。 笔者认为阅读源码主要包括下面几个步骤。 设定目标 凡事皆有目的,阅读源码也是一样。 从…
-
第5篇:死磕 java集合之ConcurrentHashMap源码分析(一)
开篇问题 (1)ConcurrentHashMap与HashMap的数据结构是否一样? (2)HashMap在多线程环境下何时会出现并发安全问题? (3)ConcurrentHas…
-
第4篇:死磕 java集合之ConcurrentHashMap源码分析(二)——扩容
本章接着上一章,链接直达请点我。 初始化桶数组 第一次放元素时,初始化桶数组。 private final Node<K,V>[] initTable() { Node<…
-
第3篇:死磕 java集合之ConcurrentHashMap源码分析(三)
本章接着上两章,链接直达: 死磕 java集合之ConcurrentHashMap源码分析(一) 死磕 java集合之ConcurrentHashMap源码分析(二) 删除元素 删…
-
第2篇:死磕 java集合之ConcurrentSkipListMap源码分析——发现个bug
前情提要 点击链接查看“跳表”详细介绍。 拜托,面试别再问我跳表了! 简介 跳表是一个随机化的数据结构,实质就是一种可以进行二分查找的有序链表。 跳表在原有的有序链表上面增加了多级…
-
第1篇:死磕 java集合之HashSet源码分析
问题 (1)集合(Collection)和集合(Set)有什么区别? (2)HashSet怎么保证添加元素不重复? (3)HashSet是否允许null元素? (4)HashSet…
-
0. sharding-jdbc源码分析准备工作
阿飞Javaer,转载请注明原创出处,谢谢! sharding-jdbc源码分析准备工作 接下来对sharding-jdbc源码的分析基于tag为1.5.4.1源码,根据shard…
-
7. sharding-jdbc源码之group by结果合并(2)
阿飞Javaer,转载请注明原创出处,谢谢! 在sharding-jdbc源码之group by结果合并(1)中主要分析了sharding-jdbc如何在GroupByStream…
-
6. sharding-jdbc源码之group by结果合并(1)
阿飞Javaer,转载请注明原创出处,谢谢! 在5. sharding-jdbc源码之结果合并中已经分析了OrderByStreamResultSetMerger、LimitDec…
-
24. sharding-jdbc源码分析之orchestration实现
源码图解 orchestration源码结构图.png 根据源码图解可知,sharding-jdbc-orchestration模块中创建数据源有两种方式:工厂类和spring;且…
-
23. sharding-jdbc源码之orchestration简介&使用
orchestration简介 sharding-jdbc2.x核心功能之一就是orchestration,即编排治理,什么意思呢?官方文档介绍–2.0.0.M1版本开…