Java 中向数组添加元素

2025年3月27日 | 阅读 4 分钟

在 Java 中,数组是用于将相同类型的数据存储在连续内存位置的基本数据结构。尽管数组一旦创建其大小就是固定的,但有不同的方法可以添加元素或创建包含新元素的新数组。在本节中,我们将探讨在 Java 中向数组添加元素的各种方法

数组是存储在连续内存位置的相同对象的集合。数组的主要优点是我们能够随机访问数组中的项,而链表中的元素则不能随机移动。

Java 中,数组是可变数据类型,即数组的大小是固定的,我们不能直接向数组添加新元素。但是,有多种方法可以向数组添加元素。

使用 ArrayList

Java 的 ArrayList 是一个动态数组实现,可以生成可调整大小的数组。它属于 Java Collections Framework,并提供了动态添加对象的方法。以下是我们如何使用 ArrayList 向类似数组的结构添加元素:

文件名:UsingArrayList.java

输出

10
20
30

使用 Arrays.copyOf()

Java 中的 arrays.copyOf() 方法允许我们将现有数组复制到一个指定长度的新数组中。我们可以向原始数组添加元素并指定额外的长度。

文件名:UsingArrayscopyOf.java

输出

1
2
3
4
5
6
7
8

使用 System.arraycopy() 方法

Java System.arraycopy() 方法用于将数据从一个数组复制到另一个数组。我们可以使用此方法创建具有附加功能的新布局。

文件名:Systemarraycopy.java

输出

1
2
3
4
5
6
7
8

移动元素以调整数组大小

在此方法中,我们将元素添加到数组的指定索引。同样,上述两种方法都会使用一个比原始数组更大的新目标数组。但是,在将原始数组的所有元素复制到目标数组后,移动目标数组的元素会很棘手。

我们将按照以下步骤向数组添加元素:

  1. 创建一个比原始数组更大的新目标数组。
  2. 将原始数组的所有元素复制到新的目标数组。
  3. 将给定索引之后的元素向右移动,直到到达数组末尾。
  4. 在给定索引处插入新元素。

考虑以下示例,我们将使用目标数组在原始数组的指定索引 3 处添加一个特定值。

文件名:JavaAddElementArraySpecified.java

输出

Original Array: [1, 2, 3, 4, 5, 6]
Array after adding value: [1, 2, 3, 7, 4, 5, 6]

结论

在 Java 中,可以通过多种方法向数组添加元素,例如 ArrayList、Arrays.copyOf() 和 System.arraycopy()。每种选项的优点取决于您应用程序的特定需求。了解这些技术使我们能够操作 Java 程序中的数组。