![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java集合容器
文章平均质量分 81
@猪大肠
阿里云社区专家博主、多年金融行业开发经验,专注于java核心技术、Spring框架研究,学习成功分享
展开
-
HashMap学习:1.7 迁移死循环分析(通俗易懂)
JDK1.7由于采用的头插法,所以多线程情况下可能会产生死循环问题,这篇文章比较简短。原创 2023-06-18 18:45:47 · 580 阅读 · 0 评论 -
Java集合学习:ArrayList源码详解
根据源码我们可以看到ArrayList在取数据非常简单,直接根据下标即可获取值,但是在删除数据、添加数据时,如果下标位于头尾之间,则需要移动部分数据位置,这在插入时导致效率没有LinkedList高;所以我们在使用集合时,需要根据业务场景考虑,来选择最佳集合容器。原创 2023-02-27 23:45:00 · 884 阅读 · 0 评论 -
Java集合学习:LinkedList源码详解
链表不需要指定容量,只要内存够大,就可以一直存储下去。链表存储时,分配完内存空间后,只需要将引用进行关联就可以,比起ArrayList可能会造成空间移动,效率高得多。但是在存储时,我们看到它是采用遍历的方式,进行下标查询,随便使用了二分进行切割,但在数据量大的情况下自旋时间长,对CPU的消耗比较大。原创 2023-02-26 23:45:00 · 416 阅读 · 0 评论 -
HashMap源码学习:红黑树原理详解
为了保持红黑树的特性,在插入或者删除时,可能破坏其平衡结构,所以通过变色、左旋、右旋等方式来保持红黑树的平衡。原创 2023-01-15 11:21:09 · 1622 阅读 · 0 评论 -
HashMap源码学习:JDK1.8版本源码解析
上篇文章讲解了JDK1.8中HashMap红黑树的原理,以及节点插入、节点移除、红黑树平衡等代码流程,本篇文章对HashMap源码重点进行讲解。原创 2023-01-19 11:38:06 · 1881 阅读 · 0 评论