下面是关于“JAVA ArrayList详细介绍(示例)”的完整攻略。
下面是关于“JAVA ArrayList详细介绍(示例)”的完整攻略。
ArrayList介绍
在Java中,ArrayList是一个动态数组,可以根据需要动态地扩展其大小。与Java数组不同,在ArrayList中,项目的插入和删除时无需移动其他项目。ArrayList类在内部使用一个数组来存储它的元素,它的大小通过构造函数在创建时确定,如果在添加时元素的数目超过了它的容量,则其容量会自动增加。
创建ArrayList
创建ArrayList的语法如下:
ArrayList<类型> arrayList变量名 = new ArrayList<类型>();
实际创建时,我们必须在类型参数中指定元素的类型,例如 String
、Integer
或 Double
等。
例如,创建一个String类型的ArrayList:
ArrayList<String> list = new ArrayList<String>();
添加和获取元素
向ArrayList添加元素时,可以使用add()方法,如下所示:
list.add("Java");
list.add("C++");
list.add("Python");
不仅可以添加字符串,还可以添加数字类型:
list.add(1);
list.add(2);
list.add(3);
可以使用 get() 方法来访问 ArrayList 中的元素。如下所示,将返回第一个元素 Java:
list.get(0);
遍历ArrayList
可以使用不同的方式来遍历 ArrayList 中的元素:使用 for 循环、使用 forEach() 方法或使用迭代器。
使用for循环遍历
可以使用 for 循环遍历 ArrayList 中的元素。如下所示:
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
使用forEach()方法遍历
可以使用 forEach() 方法来遍历 ArrayList 中的元素。如下所示:
list.forEach((item) -> {
System.out.println(item);
});
使用迭代器遍历
可以使用迭代器来遍历 ArrayList 中的元素。如下所示:
Iterator<String> it = list.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
删除和替换元素
除了添加元素之外,ArrayList 还提供了一些其他的有用的方法来删除和替换元素。
删除元素
可以使用 remove() 方法删除 ArrayList 中的元素。例如,想要删除第一个元素,则可以使用以下代码:
list.remove(0);
或者,如果要删除特定元素,则可以使用以下代码:
list.remove("Java");
替换元素
替换 ArrayList 中的元素时,可以使用 set() 方法。例如,如果要将第一个元素替换为C#,则可以使用以下代码:
list.set(0, "C#");
示例
下面是一个示例程序,演示如何使用 ArrayList:
import java.util.ArrayList;
import java.util.Iterator;
public class ArrayListExample {
public static void main(String[] args) {
// 创建一个String类型的ArrayList
ArrayList<String> list = new ArrayList<String>();
// 添加元素
list.add("Java");
list.add("C++");
list.add("Python");
// 遍历ArrayList
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
// 删除元素
list.remove("Java");
// 替换元素
list.set(0, "C#");
// 遍历ArrayList
Iterator<String> it = list.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
}
}
希望这个攻略可以帮助你更好地理解和使用 Java 的 ArrayList 类。
本文标题为:JAVA ArrayList详细介绍(示例)
- 使用Java操作TensorFlow的方法 2023-07-15
- SpringBoot2底层注解@Import用法详解 2022-11-20
- SprintBoot深入浅出讲解场景启动器Starter 2022-12-03
- 如何在不使用spring框架中使用aop的功能 2023-08-08
- 分享JVM 的四种引用方式 2023-02-20
- Java Apache common-pool对象池介绍 2023-05-19
- 如何将java或javaweb项目打包为jar包或war包 2023-02-27
- Jsp+Servlet实现文件上传下载 删除上传文件(三) 2023-07-30
- Spring Boot结合ECharts案例演示示例 2023-01-24
- 关于@Scheduled不执行的原因分析 2023-08-10