在集合框架中,ArrayList是一个普通的类,实现了List接口。
public static void main(String[] args) {
//构建一个空的列表
List<Integer> list = new ArrayList<>();
//List<Integer> 限定了list中只能存储整型元素
//构建一个具有10个容量的列表
List<Integer> list1 = new ArrayList<>(10);
//list2构建好后,与list1一致
List<Integer> list2 = new ArrayList<>(list1);
//避免省略类型,否则,任意类型的数据都可以存放
List list3 = new ArrayList();
}
方法 | 功能 |
boolean
add
(E e)
|
结尾插
e
|
void
add
(int index, E element)
|
将
e
插入到
index
位置
|
boolean
addAll
(Collection<? extends E> c)
|
结尾插
c
中的元素
|
E
remove
(int index)
|
删除
index
位置元素
|
boolean
remove
(Object o)
|
删除遇到的第一个
o
|
E
get
(int index)
|
获取下标
index
位置元素
|
E
set
(int index, E element)
|
将下标
index
位置元素设置为
element
|
void
clear
()
|
清空
|
boolean
contains
(Object o)
|
判断
o
是否在线性表中
|
int
indexOf
(Object o)
|
返回第一个
o
所在下标
|
int
lastIndexOf
(Object o)
|
返回最后一个
o
的下标
|
List<E>
subList
(int fromIndex, int toIndex)
|
截取部分
list
|
下面进行代码演示:
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add("javaSE");
list.add("javaWeb");
list.add("javaEE");
list.add("JVM");
list.add("测试");
//获取list中有效元素个数
System.out.println(list.size());//5
// 获取和设置index位置上的元素,注意index必须介于[0, size)间
System.out.println(list.get(1));//javaWeb
list.set(1,"javaWEB");
System.out.println(list.get(1));//javaWEB
// 在list的index位置插入指定元素,index及后续的元素统一往后搬移一个位置
list.add(1,"java数据结构");
System.out.println(list);//[javaSE, java数据结构, javaWEB, javaEE, JVM, 测试]
// 删除指定元素,找到了就删除,该元素之后的元素统一往前搬移一个位置
list.remove("JVM");
System.out.println(list);//[javaSE, java数据结构, javaWEB, javaEE, 测试]
// 删除list中index位置上的元素,注意index不要超过list中有效元素个数,否则会抛出下标越界异常
list.remove(list.size()-1);
System.out.println(list);//[javaSE, java数据结构, javaWEB, javaEE]
// 检测list中是否包含指定元素,包含返回true,否则返回false
if(list.contains("测试课程")){
list.add("测试课程");
}
// 查找指定元素第一次出现的位置:indexOf从前往后找,lastIndexOf从后往前找
list.add("JavaSE");
System.out.println(list.indexOf("JavaSE"));//4
System.out.println(list.lastIndexOf("JavaSE"));//4
//清空顺序表
list.clear();
System.out.println(list.size());//0
}