
Java8之集合源码分析
ArrayList、LinkedList、HashMap等Java集合源码分析,目的是加深自己对集合的理解。(Java版本JDK8)
Amy.wang96
The past is everything we were don't make us who we are.So I will dream until I make it real and all I see is stars.
展开
-
HashMap源码详细解析
HashMap源码详细解析1、重新认识HashMap1.1、什么是HashMap?1.2、长啥样?1.3、HashMap特点2、 知其所以然----撸源码2.1、 从类注释开始,能够掌握整个HashMap大致框架2.2、初始化2.1.1、构造方法解析2.2.2、负载因子、阈值深度解析2.3、新增2.3.1、新增源码分析:2.3.2、扩容2.3.3、链表树化2.3.4、红黑树拆分、链化2.4、删除2.5、查找2.6、遍历1、重新认识HashMap1.1、什么是HashMap?HashMap底层基于散列(转载 2020-08-23 10:05:41 · 569 阅读 · 0 评论 -
LinkedList 源码深度解析
LinkedList源码解析一、什么是LinkedList?一、什么是LinkedList? LinkedList同ArrayList一样都是List接口的实现类,它与ArrayList底层基于动态数组实现不同,它的底层实现为双向链表。链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑是通过链表中的指针链接次序实现的。链表由一系列结点组成,结点可以在运行时动态生成。每个节点包括两部分:一个是存储元素的数据域,另一个是存储转载 2020-08-05 20:17:38 · 183 阅读 · 0 评论 -
ArrayList 源码深度解析
ArrayList源码解析一、为什么要用ArrayList?ArrayList是什么?二、初识ArrayList类中的成员变量三、ArrayList类的构造方法一、为什么要用ArrayList?ArrayList是什么? 我们用数组来存放一组类型相同的变量,数组是一种顺序存储的线性表,所有元素的内存地址都是连续的,但它有一个致命的缺点:无法动态修改容量,ArrayList解决了这个问题,它使用Object数组存储数据,当容量不够时可以转载 2020-08-05 17:39:46 · 188 阅读 · 0 评论