Java 中无法创建不知道长度的数组,但有以下方法可以变通:使用 arraylist,一个动态长度的数组,可以通过 add() 和 remove() 方法调整大小。使用数组包装,如 integer[],允许动态添加元素,但底层数组大小仍然是固定的。
如何使用 Java 设置不知道长度的数组
在 Java 中,数组的大小在创建时就被固定了,这使得无法创建不知道长度的数组。但是,有变通的方法可以实现类似的效果:
使用 ArrayList
ArrayList 是一个可变长度的数组,可以动态地添加和删除元素。它的底层实现是一个动态大小的数组,当列表需要更多空间时自动扩展。要创建 ArrayList,可以使用以下代码:
立即学习“Java免费学习笔记(深入)”;
ArrayList<Integer> numbers = new ArrayList<>();
使用数组包装
数组包装类,如 Integer[] 或 double[],可以允许我们动态地调整数组的大小。不过,这并不是真正的可变长度数组,因为底层数组的大小仍然是固定的。要使用数组包装,可以使用以下代码:
Integer[] numbers = new Integer[0];
上述代码创建了一个长度为 0 的整数数组包装。我们可以使用 add() 方法动态地向数组包装中添加元素,它会自动扩展底层数组。
numbers.add(10); numbers.add(20);
需要注意的事项
- 使用 ArrayList 时,需要注意内存分配的开销。
- 数组包装提供的性能可能会低于 ArrayList。
- 如果你知道数组的大概长度,则创建大小合适的数组更加高效。