我已经搜索了一种在 Java 中调整数组大小的方法,但我找不到调整数组大小的方法同时保留当前元素。
我找到了像 int[] newImage = new int[newWidth];
这样的示例代码,但这会删除之前存储的元素。
我的代码基本上会这样做:每当添加新元素时,数组都会增大 1。我认为这可以通过动态编程来完成,但我不确定如何实现它。
最佳答案
您不能在 Java 中调整数组的大小。您需要:
创建一个所需大小的新数组,并将原始数组中的内容复制到新数组中,使用
java.lang.System.arraycopy(...);
使用
java.util.ArrayList<T>
类,当您需要使数组更大时,它会为您执行此操作。它很好地概括了您在问题中描述的内容。使用
java.util.Arrays.copyOf(...)
返回更大数组的方法,其中包含原始数组的内容。
关于java - 在保留 Java 中的当前元素的同时调整数组的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13197702/