ArrayList对象可以用于存储一个对象列表。特点是:只能存储对象,且长度可变。
创建语法:
ArrayList list = new ArrayList ();
或者:
ArrayList list = new ArrayList<> ();
| 方法 | 描述 |
| ArrayList() | 创建一个空的列表 |
| add(e: E): void | 增加一个新元素e到该列表的末尾 |
| add(index: int, e: E): void | 增加一个新元素e到该列表的指定下标处 |
| clear(): void | 删除列表中的所有元素 |
| contains(o: Object): boolean | 如果该列表包含元素o,则返回true |
| get(index: int): E | 返回该列表指定下标位置的元素 |
| indexOf(o: Objecrt): int | 返回列表中第一个匹配元素的下标 |
| isEmpty(): boolean | 如果该列表不包含任何元素,返回true |
| lastIndexOf(o: Object): int | 返回列表中最后一个匹配元素的下标 |
| remove(o: Object): boolean | 去除列表中的第一个匹配元素。如果该元素被去除,返回true |
| size(): int | 返回列表中的元素个数 |
| remove(index: int): E | 去除指定下标位置的元素。如果该元素被去除,返回被指定去除的元素 |
| set(index: int, e: E) | 设置指定下标位置的元素 |
注意:这里的E是泛指类型
import java.util.ArrayList;
import java.util.Arrays;
public class Test03 {
public static void main(String[] args) {
ArrayList arrayList = new ArrayList<>();
arrayList.add(1.0);
arrayList.add(3.0);
arrayList.add(4.0);
arrayList.set(0, 2.0);
//arrayList.set(5, 2.0); // index list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
list.remove(new Integer(1));
System.out.println(list); // [2, 3]
}
}
列表跟数组的异同
①数组的元素可以是任意类型;列表里的元素只能是对象,不能是基本数据类型
②数组长度在创建后就固定了,长度不可变;列表长度是可变的,创建之初不用指定列表长度
③都可以使用foreach循环来遍历元素 for(elementType element: arrayList){}
数组和列表的相互转化:①数组转化成列表使用Array.asList
Integer[] array = {1,2,3};
ArrayList arrayList1 = new ArrayList<>(Arrays.asList(array));
②列表转化成数组使用arrayList.toArray()
Integer[] integers = new Integer[arrayList1.size()]; arrayList1.toArray(integers); 最后一步是将arrayList1中的元素复制到integers中列表元素比较
①排序:java.util.Collections.sort(列表)
②获取最大值:java.util.Collections.max(列表)
③获取最小值:java.util.Collections.min(列表)
④随机打乱元素:java.util.Collections.shuffer(列表)



