📜  什么是arraylist - Java (1)

📅  最后修改于: 2023-12-03 15:06:25.255000             🧑  作者: Mango

什么是ArrayList - Java

在Java语言中,ArrayList是一种实现了List接口的动态数组。它可以自动扩容以容纳任何数量的元素,并且可以高效地随机访问其中的元素。

如何使用ArrayList

要使用ArrayList,首先需要在代码中导入java.util包。接下来,可以使用以下代码创建一个ArrayList对象:

import java.util.ArrayList;

ArrayList<String> list = new ArrayList<>();

这将创建一个名为“list”的新ArrayList,其中每个元素都是Java字符串类型。

在这个ArrayList中添加元素非常简单,可以使用add()方法:

list.add("apple");
list.add("banana");
list.add("orange");

这将向ArrayList中添加三个字符串值。

要从ArrayList中访问这些元素,可以使用get()方法:

String first = list.get(0);
String second = list.get(1);
String third = list.get(2);

System.out.println(first);  // 输出 "apple"
System.out.println(second); // 输出 "banana"
System.out.println(third);  // 输出 "orange"

请注意,ArrayList中的索引从零开始,因此第一个元素的索引为0,第二个元素的索引为1,以此类推。在上面的代码中,我们使用get()方法访问了第一个、第二个和第三个元素,并将它们打印到控制台上。

动态数组

与其他类型的数组不同,ArrayList是动态的。这意味着它可以自动扩容以容纳任意数量的元素,而无需预先指定数组的大小。

以下是一个示例,演示了如何向ArrayList中添加大量的字符串:

ArrayList<String> list = new ArrayList<>();

for (int i = 0; i < 1000000; i++) {
  list.add("hello");
}

在循环中,我们将字符串“hello”添加到list中1000000次。由于ArrayList是动态的,它会自动扩展以容纳这么多元素。

可变长度

由于ArrayList是动态数组,它的长度可以随时增加或减少。以下是一些示例代码,展示了如何进行这些操作:

ArrayList<String> list = new ArrayList<>();

// 添加元素
list.add("apple");
list.add("banana");
list.add("orange");

// 删除元素
list.remove(1);          // 删除第2个元素("banana")
list.remove("orange");   // 删除"orange"

// 修改元素
list.set(0, "grapefruit"); // 将"apple"替换为"grapefruit"

在上面的示例代码中,我们使用remove()方法删除了元素,并使用set()方法修改了第一个元素的值。

总结

ArrayList是一种实现了List接口的动态数组,在Java中可以高效地随机访问其中的元素。它是可变长度的,并且可以自动扩容以容纳任意数量的元素。此外,它还具有许多有用的方法,例如add()、remove()和set()等。