gpt4 book ai didi

java - 替换 if java 中的数组元素

转载 作者:行者123 更新时间:2023-12-01 23:53:51 27 4
gpt4 key购买 nike

我必须在一个类中创建这个小方法,将一颗行星添加到一个星系中,但似乎数组planeta中的元素k+1没有被替换...是因为它在if语句中吗?

public void addPlanet(String planetName, BigInt x, BigInt y, BigInt z) {        
if (planetExists(planetName) && !complete()){
newSP= new SpacePoint(x,y,z);
newPlanet= new Planet("planetName",newSP);
int k=this.size();
planeta[k+1]=planetName; //doesnt replace because its inside the if??
}
}

如果这是一个简单的问题,我很抱歉,我正在大学学习 Java 类(class),而且我真的很新......PS:顺便说一句,谢谢大家,这些天你们一直是我的老师! =)

最佳答案

我怀疑问题是你实际上应该替换 planeta[k] - 并增加尺寸。

Java 中的数组是从 0 开始的,因此如果您的大小为 2,您的数组可能有值:

planeta[0] = "Earth";
planeta[1] = "Jupiter";

...所以下一个要填充的槽位将是 planeta[2] ,并将大小增加到 3。

更好的选择是使用 List<String> (例如 ArrayList<String> ),因此您可以直接调用 add ,并且您无需担心溢出数组的边界等问题。

关于java - 替换 if java 中的数组元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15911725/

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