Java ArrayList
Java ArrayList
ArrayList
类是一种可调整大小的数组,可以在 java.util
包中找到。
Java 中的内置数组和 ArrayList
的区别在于,数组的大小不能修改(如果要向数组添加元素或从数组中删除元素,则必须创建一个新数组)。虽然可以随时在 ArrayList
中添加和删除元素。语法也略有不同:
实例
创建名为 cars 的 ArrayList
对象,用于存储字符串:
import java.util.ArrayList; // 导入 ArrayList 类 ArrayList<String> cars = new ArrayList<String>(); // 创建 ArrayList 对象
提示:如果您不理解是什么包,请阅读我们的 Java 包教程。
添加项目
ArrayList
类有许多有用的方法。例如,要向 ArrayList
添加元素,请使用 add()
方法:
实例
import java.util.ArrayList; public class Main { public static void main(String[] args) { ArrayList<String> cars = new ArrayList<String>(); cars.add("Volvo"); cars.add("BMW"); cars.add("Ford"); cars.add("Mazda"); System.out.println(cars); } }
您还可以通过引用索引号在指定位置添加元素:
实例
import java.util.ArrayList; public class Main { public static void main(String[] args) { ArrayList<String> cars = new ArrayList<String>(); cars.add("Volvo"); cars.add("BMW"); cars.add("Ford"); cars.add(0, "Mazda"); // 在列表开头(索引0)插入元素 System.out.println(cars); } }
提示:请记住,数组索引从 0 开始:[0] 是第一个元素,[1] 是第二个元素,依此类推。
访问项目
如需访问 ArrayList
中的元素,请使用 get()
方法并引用索引号:
实例
cars.get(0);
提示:请记住,数组索引从 0 开始:[0] 是第一个元素,[1] 是第二个元素,依此类推。
删除项目
如需删除元素,请使用 remove()
方法并引用索引号:
实例
cars.remove(0);
如需删除 ArrayList
中的所有元素,请使用 clear()
方法:
实例
cars.clear();
遍历 ArrayList
使用 for
循环遍历 ArrayList
的元素,并使用 size()
方法指定循环应运行的次数:
实例
public class Main { public static void main(String[] args) { ArrayList<String> cars = new ArrayList<String>(); cars.add("Volvo"); cars.add("BMW"); cars.add("Ford"); cars.add("Mazda"); for (int i = 0; i < cars.size(); i++) { System.out.println(cars.get(i)); } } }
您还可以使用 for-each 循环遍历 ArrayList
:
实例
public class Main { public static void main(String[] args) { ArrayList<String> cars = new ArrayList<String>(); cars.add("Volvo"); cars.add("BMW"); cars.add("Ford"); cars.add("Mazda"); for (String i : cars) { System.out.println(i); } } }
其他类型
ArrayList 中的元素实际上是对象。在上面的例子中,我们创建了 "String" 类型的元素(对象)。请记住,Java 中的 String 是对象(不是原始类型)。
要使用其他类型,例如 int,您必须指定等效的包装类:Integer
。对于其他原始类型,请使用:
Boolean
表示 booleanCharacter
表示 charDouble
表示 double
实例
创建 ArrayList
来存储数字(添加 Integer
类型的元素):
import java.util.ArrayList; public class Main { public static void main(String[] args) { 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); } } }
对 ArrayList 进行排序
java.util
包中另一个有用的类是 Collections
类,它包括 sort()
方法,用于按字母或数字对列表进行排序:
实例
对字符串的 ArrayList 进行排序:
import java.util.ArrayList; import java.util.Collections; // 导入 Collections 类 public class Main { public static void main(String[] args) { ArrayList<String> cars = new ArrayList<String>(); cars.add("Volvo"); cars.add("BMW"); cars.add("Ford"); cars.add("Mazda"); Collections.sort(cars); // 对 cars 排序 for (String i : cars) { System.out.println(i); } } }
实例
对整数的 ArrayList 进行排序:
import java.util.ArrayList; import java.util.Collections; // 导入 Collections 类 public class Main { public static void main(String[] args) { ArrayList<Integer> myNumbers = new ArrayList<Integer>(); myNumbers.add(33); myNumbers.add(15); myNumbers.add(20); myNumbers.add(34); myNumbers.add(8); myNumbers.add(12); Collections.sort(myNumbers); // 对 myNumbers 排序 for (int i : myNumbers) { System.out.println(i); } } }
完整的 ArrayList 参考手册
提示:如需获得 ArrayList 方法的完整参考,请访问我们的 Java ArrayList 参考手册。