JDK集合
wbb9019
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JDK源码解读-集合(一)-ArrayList
JDK源码解读-集合-ArrayList 如何扩容 private void grow(int minCapacity) { // overflow-conscious code //获取原集合的长度 int oldCapacity = elementData.length; //扩容到原来的1.5倍 int newCapacity = oldCapacit...原创 2019-05-28 17:08:34 · 226 阅读 · 0 评论 -
JDK源码解读-集合(二)-CopyOnWriteArrayList
JDK源码解读-集合-CopyOnWriteArrayList 属性分析 /** The lock protecting all mutators */ final transient ReentrantLock lock = new ReentrantLock(); /** The array, accessed only via getArray/setArray. */ private t...原创 2019-05-28 17:10:37 · 272 阅读 · 0 评论 -
JDK源码解读-集合(三)-HashMap
HashMap的数据结构 HashMap的结构是数组+链表+红黑树,数组中的每个位置被经常叫做桶。数据采用key-value方式存储。插入值的时候首先对key进行hash运算,计算出他在数组中的下标(桶的编号),每个桶中的元素有两种结构,在元素不多的情况下是链表,至于原因我想是因为这里不需要支持随机访问,而且用链表不需要连续的内存空间。当元素比较多的时候会改为红黑树进行存储,原因是链表的查询时间复...原创 2019-05-29 21:00:52 · 182 阅读 · 0 评论
分享