![](https://img-blog.csdnimg.cn/ee8f4467e2834f32b09a3d1a037d38a2.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java集合
文章平均质量分 92
深入讲解Java集合底层原理,分析底层源码。
小七mod
脚踏实地,仰望星空
展开
-
【Java集合】LinkedHashMap源码详解
一篇文章带你搞懂LinkedHashMap扩容原理,从底层源码详细剖析扩容流程。原创 2023-02-05 18:17:30 · 662 阅读 · 0 评论 -
【Java集合】HashSet源码分析
作为一个常用的Set接口实现类,日常开发过程中使用率非常高,因此有必要对其原理进行分析。本文将对其源码做详细的分析,让你快速了解ArrayList的底层原理。原创 2023-01-28 22:40:14 · 721 阅读 · 1 评论 -
【Java集合】ArrayList在JDK1.7与1.8中的区别
总结ArrayList在JDK1.7与1.8中的区别。原创 2023-01-14 22:33:36 · 1497 阅读 · 2 评论 -
【Java集合】ArrayList自动扩容机制分析
一篇文章带你搞懂ArrayList扩容原理,从底层源码详细剖析扩容流程。原创 2023-01-14 22:29:26 · 3128 阅读 · 2 评论 -
【Java集合】ArrayList源码分析
作为一个常用的List接口实现类,日常开发过程中使用率非常高,因此有必要对其原理进行分析。本文将对其源码做详细的分析,让你快速了解ArrayList的底层原理。原创 2023-01-11 20:56:39 · 863 阅读 · 0 评论 -
【Java集合】HashMap系列(五)——HashMap在JDK1.7和JDK1.8比较总结及常见面试题
对比HashMap在JDK1.7和JDK1.8的不同,HashMap的高频面试题以及分析为什么Hashtable和ConcurrentHashMap 是不允许键或值为 null 的,HashMap 的键值则都可以为 null?原创 2022-08-17 19:46:30 · 1119 阅读 · 0 评论 -
【并发编程】为什么Hashtable和ConcurrentHashMap 是不允许键或值为 null 的,HashMap 的键值则都可以为 null?
为什么Hashtable和ConcurrentHashMap 是不允许键或值为 null 的,HashMap 的键值则都可以为 null?这篇文章将从源码实现的角度和架构设计的角度分别讨论其原因。原创 2022-08-15 21:05:07 · 5704 阅读 · 1 评论 -
【Java集合】HashMap系列(四)——HashMap在JDK1.7和JDK1.8中的并发问题的分析以及如何保证并发安全
结合源码和画图详细剖析JDK1.7和JDK1.8的HashMap存在的并发安全问题,以及如何解决HashMap的并发安全问题原创 2022-08-09 15:21:42 · 2345 阅读 · 1 评论 -
【Java集合】HashMap系列(三)——TreeNode内部类源码分析
想要搞懂HashMap的小伙伴必看,史上最全的TreeNode源码分析,一篇文章带你彻底搞懂HashMap底层原理。removeTreeNode()、untreeify()、balanceDeletion()、rotateLeft()、rotateRight()、putTreeVal()、root()、find()、split()、untreeify()、treeify()、tieBreakOrder()、balanceInsertion()、moveRootToFront()等方法源码剖析。原创 2022-05-20 17:40:09 · 3246 阅读 · 4 评论 -
【Java集合】HashMap的删除操作源码详解
HashMap中的removeNode()删除元素方法会触发一系列的TreeNode类的方法,依次为:removeTreeNode()、untreeify()、balanceDeletion()、rotateLeft()、rotateRight()。本章将会详细讲解这些方法的源码,带你深入了解HashMap删除操作流程。原创 2022-05-17 21:04:56 · 1114 阅读 · 0 评论 -
【Java集合】HashMap的添加操作源码详解
HashMap中的putVal()添加元素方法会触发一系列的TreeNode类的方法,依次为:putTreeVal()、root()、find()。本章将会详细讲解这些方法的源码,带你深入了解HashMap添加操作流程。原创 2022-05-15 15:03:17 · 877 阅读 · 0 评论 -
【Java集合】HashMap的扩容操作源码详解
HashMap中的resize()扩容方法会触发一系列的TreeNode类的方法,依次为:split()、untreeify()、treeify()、tieBreakOrder()、balanceInsertion()、moveRootToFront()、checkInvariants()。本章将会详细讲解这些方法的源码,带你深入了解HashMap扩容流程。原创 2022-05-14 12:42:31 · 1187 阅读 · 0 评论 -
【Java集合】HashMap系列(二)——底层源码分析
想要搞懂HashMap的小伙伴必看,史上最全的HashMap源码分析,一篇文章带你彻底搞懂HashMap底层原理。详细讲解添加put()、查找get()、删除remove()、扩容resize()等方法底层源码实现原理以及对比这些源码在JDK1.7和JDK1.8之间区别。原创 2022-03-07 21:01:04 · 1542 阅读 · 1 评论 -
【Java集合】HashMap的remove()源码详解以及JDK1.7与JDK1.8的区别
详细讲解HashMap删除操作底层源码,以及对比remove()源码在JDK1.7和JDK1.8中的区别。原创 2022-02-25 13:57:47 · 2168 阅读 · 0 评论 -
【Java集合】HashMap的get()源码详解以及JDK1.7与JDK1.8的区别
详细讲解HashMap查找操作底层源码,以及对比get()源码在JDK1.7和JDK1.8中的区别。原创 2022-02-22 10:00:00 · 948 阅读 · 0 评论 -
【Java集合】HashMap的put()源码详解以及JDK1.7与JDK1.8的区别
详细讲解HashMap添加操作底层源码,以及对比put()源码在JDK1.7和JDK1.8中的区别。原创 2022-02-21 16:15:46 · 2053 阅读 · 0 评论 -
【Java集合】HashMap的putMapEntries()源码详解
HashMap的putMapEntries()源码详解原创 2022-02-10 22:15:19 · 718 阅读 · 0 评论 -
【Java集合】HashMap的resize()源码详解以及JDK1.7与JDK1.8的区别
HashMap的扩容源码详解,以及JDK1.7和JDK1.8的resize()方法的源码比较。原创 2022-02-10 21:54:47 · 2311 阅读 · 0 评论 -
【Java集合】HashMap的tableSizeFor()源码详解
HashMap的tableSizeFor()的源码详解及其算法核心思想原创 2022-02-10 21:19:12 · 1773 阅读 · 1 评论 -
【Java集合】HashMap系列(一)——底层数据结构分析
详细讲解HashMap底层数据结构,成员属性,内部类(Node、TreeNode)等知识点。对比JDK1.7和JDK1.8HashMap数据结构之间的区别。原创 2022-02-07 20:05:42 · 3591 阅读 · 1 评论 -
【并发基础】Java中的fail-fast(快速失败)机制
fail-fast 机制,即快速失败机制,是java集合(Collection)中的一种错误检测机制。当多个线程对同一个集合的内容进行操作时,就有可能出现在一个线程正在迭代集合的过程中,该集合因为别的线程对其的操作使得结构发生变化,这就会产生fail-fast事件,抛出 ConcurrentModificationException异常。原创 2022-01-19 21:41:49 · 2782 阅读 · 0 评论 -
【Java集合】一文快速了解HashMap底层原理
一篇文章快速带你了解HashMap的底层原理和面试必考点原创 2021-12-31 14:37:59 · 2442 阅读 · 2 评论