首页 >Java >java教程 >Java中如何高效地扩大数组?

Java中如何高效地扩大数组?

Susan Sarandon
Susan Sarandon原创
2024-11-24 07:52:11541浏览

How to Efficiently Enlarge Arrays in Java?

在 Java 中放大数组:保留当前元素

与其他编程语言不同,Java 中的数组的大小是固定的。向完整数组添加新元素需要手动调整大小或替代数据结构。

调整数组大小

由于 Java 的数组不变性,调整大小涉及将现有元素复制到新元素中具有所需大小的数组。 java.lang.System.arraycopy(...) 方法可以完成此任务:

int[] oldArray = {1, 2, 3, 4, 5};
int[] newArray = new int[oldArray.length + 1]; // Larger array
System.arraycopy(oldArray, 0, newArray, 0, oldArray.length);

替代数据结构

另一种选择是使用动态数据类似 java.util.ArrayList 的结构。与数组不同,ArrayList 可以在添加元素时自动扩大自身:

ArrayList<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
// No resizing needed as the ArrayList expands dynamically

使用 Arrays.copyOf(...)

Java 9 引入了 java.util .Arrays.copyOf(...) 方法,简化数组调整大小:

int[] oldArray = {1, 2, 3, 4, 5};
int[] newArray = Arrays.copyOf(oldArray, oldArray.length + 1);

以上是Java中如何高效地扩大数组?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn