gpt4 book ai didi

java - 无法将整数添加到第一个索引处没有 0 的数组

转载 作者:行者123 更新时间:2023-11-30 08:20:14 24 4
gpt4 key购买 nike

一开始我使用了一个ArrayList。但是后来我的类(class)老师告诉我,我不能在我的程序中使用 ArrayList。他说我只能用数组。

问题是当我向数组添加一个整数时,它只是将零放在第一个索引上。

代码如下:

int[] Bag = new int[1];
boolean isit = true;
do {
int[] NewBag = new int[Bag.length + 1];
String name = scanner.next();

if (name.equals("A")){
int number = scanner.nextInt();
for (int i = 0; i < Bag.length; i++) {
NewBag[NewBag.length - 1] = number;
NewBag[i] = Bag[i];
}
Bag = NewBag;
System.out.println(number + " added to Bag.");
}
} while (isit == true);

请大家帮帮我。如果没有正确的添加操作,我无法进行最小值和大小操作。

最佳答案

您从一个单元素数组开始,然后立即向其中添加第二个元素:

    int[] NewBag = new int[Bag.length + 1]; 

因此,当您读取一个数字时,您的数组已经包含两个元素(即一个元素太多)。

要更正此问题,您需要更改

    int[] Bag = new int[1];

    int[] Bag = new int[0];

如果这看起来很奇怪,请参阅 Why does Java allow arrays of size 0?

你还需要移动

NewBag[NewBag.length - 1] = number;

跳出循环。

关于java - 无法将整数添加到第一个索引处没有 0 的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26203382/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com