1、定义
ArrayList 类是一个可以动态修改的数组,与普通数组的区别就是它是没有固定大小的限制,我们可以添加或删除元素。
ArrayList 继承了 AbstractList ,并实现了 List 接口。
ArrayList 类位于 java.util 包中,使用前需要引入它,语法格式如下:
import java.util.ArrayList; // 引入 ArrayList 类 ArrayList<E> objectName =new ArrayList<>(); // 初始化
- E: 泛型数据类型,用于设置 objectName 的数据类型,只能为引用数据类型。
- objectName: 对象名。
ArrayList 是一个数组队列,提供了相关的添加、删除、修改、遍历等功能。
2、特性
- 允许插入重复的元素
- 插入的元素是有序的
- 动态扩容
- 非线程安全,异步
- 动态数组的数据结构
- 随机访问(get set)
3、常见方法
add() |
将元素插入到指定位置的 arraylist 中 |
addAll() | 添加集合中的所有元素到 arraylist 中 |
clear() | 删除 arraylist 中的所有元素 |
clone() | 复制一份 arraylist |
contains() | 判断元素是否在 arraylist |
get() | 通过索引值获取 arraylist 中的元素 |
indexOf() | 返回 arraylist 中元素的索引值 |
removeAll() | 删除存在于指定集合中的 arraylist 里的所有元素 |
remove() | 删除 arraylist 里的单个元素 |
size() | 返回 arraylist 里元素数量 |
isEmpty() | 判断 arraylist 是否为空 |
subList() | 截取部分 arraylist 的元素 |
set() | 替换 arraylist 中指定索引的元素 |
sort() | 对 arraylist 元素进行排序 |
toArray() | 将 arraylist 转换为数组 |
toString() | 将 arraylist 转换为字符串 |
ensureCapacity() | 设置指定容量大小的 arraylist |
lastIndexOf() | 返回指定元素在 arraylist 中最后一次出现的位置 |
retainAll() | 保留 arraylist 中在指定集合中也存在的那些元素 |
containsAll() | 查看 arraylist 是否包含指定集合中的所有元素 |
trimToSize() | 将 arraylist 中的容量调整为数组中的元素个数 |
removeRange() | 删除 arraylist 中指定索引之间存在的元素 |
replaceAll() | 将给定的操作内容替换掉数组中每一个元素 |
removeIf() | 删除所有满足特定条件的 arraylist 元素 |
forEach() | 遍历 arraylist 中每一个元素并执行特定操作 |
4、示例
add/addAll/set/get/size······
1 import java.util.ArrayList;
2 import java.util.List;
3
4 public class ArrayListTset {
5 public static void main(String[] args) {
6 ArrayList<String> list = new ArrayList<String>();
7 list.add("hello");
8 list.add("world");
9 list.add("java");
10 System.out.println("list:"+list);
11 list.add(1,"the");//指定位置插入元素
12 System.out.println("list:"+list);
13 List newList = list.subList(1,2);//截取list中的部分
14 System.out.println("newlist:"+newList);
15 list.addAll(newList);
16 System.out.println("list:"+list);
17 System.out.println("list size:"+list.size());
18 list.set(4,"python");
19 System.out.println("list:"+list);//指定位置替换元素
20 System.out.println("list size:"+list.size());
21 System.out.println(list.indexOf("python"));
22 System.out.println(list.isEmpty());
23
24 }
25
26 }