一尘不染

调整数组大小,同时将当前元素保留在Java中?

java

我已经寻找了一种在Java中调整数组大小的方法,但是我找不到在保留当前元素的同时调整数组大小的方法。

我发现了类似的示例代码int[] newImage = new int[newWidth];,但是这删除了之前存储的元素。

我的代码基本上可以做到这一点:每当添加新元素时,数组将增大1。我认为可以通过动态编程来完成,但是我不确定如何实现它。


阅读 403

收藏
2020-03-07

共1个答案

一尘不染

你无法在Java中调整数组的大小。你需要:

  1. 创建所需大小的新数组,然后使用以下命令将内容从原始数组复制到新数组 java.lang.System.arraycopy(…);

  2. 使用java.util.ArrayList类,当你需要使数组更大时,该类将为你执行此操作。它很好地封装了你在问题中描述的内容。

  3. 使用java.util.Arrays.copyOf(…)返回原始数组内容的更大数组的方法。

2020-03-07