博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JDK1.8 ArrayList 源码分析
阅读量:5796 次
发布时间:2019-06-18

本文共 495 字,大约阅读时间需要 1 分钟。

hot3.png

类示意图:

110059_ccm9_96637.png

 

ArrayList :

   构造函数:ArrayList() ArrayList(int initialCapacity) ArrayList(Collection<? extends E> c)

   

 初始化好的成员变量:DEFAULT_CAPACITY=10.如果使用默认的无参数构造函数,那么初始化的数组的长度就是10.扩容的话也会安装10的1.5倍去扩容

 

另外2个有参数的构造器方法如果长度都是大于0,那么扩容就会安装初始的长度的1.5倍数去扩容。

如果长度等于0的话,初始的容量就不会是10.就安装1.5倍数去扩容。

 

modCount:这个参数是用来作为fast-fail的用途来使用的。在迭代的过程中,会判断modCount和预期的值得大小。迭代过程中,执行的add或者remove操作会改变modcount,就会快速的发现变量的值不符合预期,就跑出异常

 

ArrayList 一共四个内部类:分别是ArrayListSpliterator,Itr,ListItr,SubList。

 

 

 

 

转载于:https://my.oschina.net/payzheng/blog/689588

你可能感兴趣的文章
如何用Fiddler对Android应用进行抓包
查看>>
iOS为所需要的视图添加模糊效果--UIVisualEffectView
查看>>
HDU-1222 Wolf and Rabbit (欧几里得定理)
查看>>
Camera Calibration 相机标定:原理简介(五)
查看>>
ehcache实例
查看>>
python 匿名函数
查看>>
javascript实现-------------选择排序
查看>>
讲真:序列化必读
查看>>
centOS中VMware Tools 安装
查看>>
oracle中以dba_、user_、v$_、all_、session_、index_开头的常...
查看>>
leetcode 116- Populating Next Right Pointers in Each Node
查看>>
spring项目启动错误——java.lang.NoClassDefFoundError: org/springframework/context/ApplicationContext...
查看>>
iOS开发网络篇—GET请求和POST请求
查看>>
字典dict
查看>>
游戏名词解释
查看>>
mongodb数据的导出和导入
查看>>
白话算法(7) 生成全排列的几种思路(二) 康托展开
查看>>
d3 v4实现饼状图,折线标注
查看>>
微软的云策略
查看>>
Valid Parentheses
查看>>