一、概述
什么是ArrayList?ArrayList类是可以动态修改的数组,没有固定的大小限制,可以添加、删除、修改、遍历元素。ArrayList继承了AbstractList,实现了List接口。
二、ArrayList的使用
1、在使用前需要导入包:
import java.util.ArrayList;
2、初始化:
ArrayList<E> objectName = new ArrayList<>();
3、 添加元素
ArrayList<String> sites = new ArrayList<String>();
sites.add("Google");
sites.add("Runoob");
sites.add("Taobao");
sites.add("Weibo");
System.out.println(sites);
结果:
Google Runoob Taobao Weibo
4、 访问元素
ArrayList<String> sites = new ArrayList<String>();
sites.add("Google");
sites.add("Runoob");
sites.add("Taobao");
sites.add("Weibo");
System.out.println(sites.get(1));
结果:
Runoob
5、修改元素
ArrayList<String> sites = new ArrayList<String>();
sites.add("Google");
sites.add("Runoob");
sites.add("Taobao");
sites.add("Weibo");
sites.set(2, "Wiki");
System.out.println(sites);
结果:
Google Runoob Wiki Weibo
6、 删除元素
ArrayList<String> sites = new ArrayList<String>();
sites.add("Google");
sites.add("Runoob");
sites.add("Taobao");
sites.add("Weibo");
sites.remove(3);
System.out.println(sites);
结果:
Google Runoob Taobao
7、 计算大小
ArrayList<String> sites = new ArrayList<String>();
sites.add("Google");
sites.add("Runoob");
sites.add("Taobao");
sites.add("Weibo");
System.out.println(sites.size());
结果:
4
8、 迭代数组
##使用for循环来迭代数组
ArrayList<String> sites = new ArrayList<String>();
sites.add("Google");
sites.add("Runoob");
sites.add("Taobao");
sites.add("Weibo");
for (int i = 0; i < sites.size(); i++) {
System.out.println(sites.get(i));
}
结果:
Google
Runoob
Taobao
Weibo
##使用for-each 来迭代数组
ArrayList<String> sites = new ArrayList<String>();
sites.add("Google");
sites.add("Runoob");
sites.add("Taobao");
sites.add("Weibo");
for (String i : sites) {
System.out.println(i);
}
结果:
Google
Runoob
Taobao
Weibo
9、 存储整数类型数组
ArrayList<Integer> myNumbers = new ArrayList<Integer>();
myNumbers.add(10);
myNumbers.add(15);
myNumbers.add(20);
myNumbers.add(25);
for (int i : myNumbers) {
System.out.println(i);
}
结果:
10
15
20
25
10、ArrayList排序
##使用Collections类的sort()方法进行排序
ArrayList<String> sites = new ArrayList<String>();
sites.add("Taobao");
sites.add("Wiki");
sites.add("Runoob");
sites.add("Weibo");
sites.add("Google");
Collections.sort(sites);
for (String i : sites) {
System.out.println(i);
}
结果:
Google
Runoob
Taobao
Weibo
Wiki