在 Java 中创建新的 List 可以使用多种方式,其中一些常见的方式包括使用 ArrayList、LinkedList、CopyOnWriteArrayList 等。以下是每种方式的详细介绍、步骤流程以及可能的依赖坐标。
ArrayList 是一个基于动态数组实现的 List,在大多数情况下具有较好的性能。
步骤流程:
import java.util.ArrayList;
List<T> list = new ArrayList<>();
list.add(element);
示例代码:
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<String> arrayList = new ArrayList<>();
arrayList.add("Apple");
arrayList.add("Banana");
arrayList.add("Orange");
System.out.println(arrayList); // Output: [Apple, Banana, Orange]
}
}
Maven 依赖坐标:
<!-- Add this to your dependencies -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-collections4</artifactId>
<version>4.4</version>
</dependency>
Gradle 依赖坐标:
// Add this to your dependencies
implementation 'org.apache.commons:commons-collections4:4.4'
LinkedList 是一个基于双向链表实现的 List,对于插入和删除操作,具有较好的性能。
步骤流程:
import java.util.LinkedList;
List<T> list = new LinkedList<>();
list.add(element);
示例代码:
import java.util.LinkedList;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<String> linkedList = new LinkedList<>();
linkedList.add("Red");
linkedList.add("Green");
linkedList.add("Blue");
System.out.println(linkedList); // Output: [Red, Green, Blue]
}
}
CopyOnWriteArrayList 是一个线程安全的 List 实现,适用于多线程环境下的读操作较多的情况。
步骤流程:
import java.util.concurrent.CopyOnWriteArrayList;
List<T> list = new CopyOnWriteArrayList<>();
list.add(element);
示例代码:
import java.util.List;
import java.util.concurrent.CopyOnWriteArrayList;
public class Main {
public static void main(String[] args) {
List<Integer> copyOnWriteArrayList = new CopyOnWriteArrayList<>();
copyOnWriteArrayList.add(10);
copyOnWriteArrayList.add(20);
copyOnWriteArrayList.add(30);
System.out.println(copyOnWriteArrayList); // Output: [10, 20, 30]
}
}
请注意,CopyOnWriteArrayList 的依赖在 Java 标准库中,无需添加额外的 Maven 或 Gradle 依赖。
这些是在 Java 中创建新 List 的一些常见方式,每种方式都有不同的适用场景和性能特点。选择哪种方式取决于你的需求和使用环境。