为什么我的上一个索引有一个值而它不应该有一个值?

ccgok5k5  于 2021-06-30  发布在  Java
关注(0)|答案(1)|浏览(291)

**结束。**此问题需要详细的调试信息。它目前不接受答案。
**想改进这个问题吗?**更新问题,使其成为堆栈溢出的主题。

上个月关门了。
改进这个问题
我试图将数组中的所有元素向左移动1,我试图从数组中删除索引0处的元素3,但是我收到的输出与我期望的完全不同。我不明白为什么我会收到这个输出。
我希望接收的输出是[2,2,3,0]我希望最后一个索引上的值为零,因为我将所有元素向左移动,所以不会有值移动到最后一个索引。但我却收到了[2,2,3,3]。我不明白为什么最后一个索引是3?

int [] nums = {3,2,2,3};
int length = nums.length;

for (int j = 1; j < length; j++) {

   nums [j - 1] = nums [j];
}

return nums.length;
1zmg4dgp

1zmg4dgp1#

试试这个,我只是把最后一个设置为0:

int[] nums = {3,2,2,3};
int length = nums.length;

for (int j = 1; j < length; j++) {
    nums [j - 1] = nums [j];
}

nums[nums.length - 1] = 0;

for (int number : nums) {
    System.out.print(number);
}

我将最后一个数字设置为0,因为您只使用for循环更改了索引0、1和2,所以最后一个索引(即索引3)保持值3。
所以你得到这个:2230。

相关问题