Java笔记--ArrayList集合
ArrayList集合
ArrayList集合长度可变原理:
1、当创建ArrayList容器时,底层会存在一个长度为10个大小的空数组。
2、当集合中的元素大于10的时候,集合会扩容元素组1.5倍大小的新数组。
3、将原数组数据拷贝到新数组中。
4、将新元素添加到新的数组。

集合和数组的使用选择:
数组:存储的元素个数固定不变;
集合:存储的元素个数经常发生改变。
ArrayList集合的使用:
1、构造方法:
public ArrayList( ); 创建一个空的集合容器。
集合容器中添加元素的方法: list.add(元素);


我们目前打印出String、StringBui、ArrayList这些类的对象名时,并不会出现地址,这个问题以后会学到。
2、集合容器的创建细节:
当我们使用ArrayList list = new ArrayList( );创建集合容器的时候,集合容器中可以添加任意类型的数据,这样会导致处理数据的时候,出现各种各样的问题。
所以我们可以这样创建:
ArrayList<String> list = new ArrayList<String>( );
注意:在jdk7版本开始,等号右边<>里面可以不用写内容。
*<>:泛型
后面会学习,目前只需要了解它可以对集合中的数据类型做限制。
泛型中,不允许编写基本数据类型。
如果要存储基本数据类型,应写其对应的包装类。



ArrayList常用成员方法:
1、增:
public boolean add(E e):将指定的元素添加到此列表的尾部。
例如:list.add("abc");
字符串"abc"将被添加至这个数组容器中元素的末尾。
public void add(int index, E element): 在指定的索引位置处,添加对应的元素。(插队)

如图:在0号索引处插入了"张三4"。

2、删:
public E remove(int index): 删除指定索引位置处的元素,返回值是被删掉的元素。
例如要删除上图的张三2 list.remove(2); 如果定义一个变量来接收它,变量接收的值是"张三2" 。
public boolean remove(Object o): 删除指定元素。
例如删除上面的张三2 list.remove("张三2"); 返回true或false。
3、改:
public E set(int index,E element): 修改指定索引处的元素。返回值是被覆盖掉的元素。

"张三2"被修改为"李四",如果定义一个变量接收返回值,返回值为"张三2"。

4、查:
public E get(int index): 根据索引,获取集合中的元素。
例如获取上图中的李四:String s1 = list.get(1);因为是查找,所以一般都要用变量来接收它。
public int size( ): 返回集合中的元素个数。

集合的遍历操作:





