我该怎么做?我的数组是[1,2,3,4,5]后,我试图删除索引0,结果看起来像[2,2,3,4,0]
public static void remove (int[] array, int index) {
for (int i = index; i < array.length - 1; i++)
{
array[index] = array[index+1];
}
array[array.length-1] = 0;
}
答案 0 :(得分:0)
您可能希望将循环中的行更改为
array[i] = array[i+1];
答案 1 :(得分:0)
您可以使用 ArrayUtils 类从数组中删除元素,而不是自己删除。
要记住的一点是,在Java中,数组是固定大小的,一旦创建了数组,就无法更改它们的大小,这意味着删除或删除项目不会减小数组的大小。
您可以使用 -
删除arrayName = ArrayUtils.remove(arrayName,index_to_remove)
您需要做的是创建一个新数组,并使用 System.arrayCopy()或任何其他方法将此数组的剩余内容复制到新数组中。
对于Object数组,您还可以将Array转换为List,然后删除特定对象并将List转换回数组