2、 ArrayList中的属性、构造方法、常用方法介绍
简单点说:java.util.ArrayList<E>是一个列表类,它是用来存放其他Java对象,内部是通过数组来实现的。
先看下面的图(简略图):
当数组容量不够的时候,会对数组容量进行扩容
可以通过数组下标来快速的访问ArrayList里面的元素
当新增或者删除ArrayList里面的元素时,可能会涉及到移位操作
可以截取数组的子数组操作
从ArrayList类的定义中可以看到,它好复杂哟,定义了那么多的东西,又有父类,又实现了接口等等,这都要怪它的'祖宗',定义了那么多的规范、规则。(@_@)
好了,不多废话,撸起袖子继续干:
第一种:默认构造方法(无参数构造方法)
第二种: 带初始列表容量大小参数的构造方法
第三种:带初始化子列表参数的构造方法
将指定的元素添加到此列表的尾部 |
将指定的元素插入此列表中的指定位置 |
移除此列表中指定位置上的元素 |
移除此列表中首次出现的指定元素 |
用指定的元素替代此列表中指定位置上的元素 |
将子集合c中的元素添加到此集合中 |
将子集合c中的元素添加到此集合中的index位置开始处 |
移除集合中索引在fromIndex(包括)和toIndex(不包括)之间的所有元素 |
仅保留在子集合c中那些也包含在此集合中的元素 |
判断集合中是否包含了元素o |
返回此集合中index位置上的元素 |
返回此集合中首次出现元素o的位置 |
返回此集合中最后一次出现元素o的位置 |
返回此集合中元素的个数 |
返回此列表实例的浅复制 |
如有必要,增加此列表实例的容量,以确保它至少能够容纳最小容量参数所指定的元素数 |
将此列表实例的容量调整为列表的当前大小 |
按适当顺序返回包含此列表中所有元素的数组 |
按适当顺序返回包含此列表中所有元素的数组 |
返回列表的子列表 |
第一种: 通过索引值去遍历(随机遍历)
第三种: 通过增强的for循环去遍历
第三种: 通过迭代器去遍历
下面就来看看三种遍历方式的示例代码和遍历的效率比较: