我正在研究这个课程,这个课程很快就会上课,但是在我的生活中无法解决为什么我有一个无限循环。这是我的第一个编码课,所以这对我来说都是新手。我已经发现循环来自我的“getLocation”方法,我认为我试图计算“位置”变量的方式有问题,但就像我说我不确定。我们刚刚开始使用多个类和私有构造函数,它真的让我失望。我会接受任何帮助。谢谢!
public int getLocation(){
while (location <= 250) {
location = 5;
location++; //endless loop here
System.out.println("test");
}
return location;
}
答案 0 :(得分:3)
while (location <= 250) {
location = 5;
location++; //endless loop here
System.out.println("test");
}
在这个循环中, location
永远不会超过250。执行循环体后,其值始终为6,因为您将其设置为5并添加1。
因此,当它到达此循环时提供location <= 250
,它将永远不会停止。
将location = 5;
移到循环体外(或只删除它)。
答案 1 :(得分:2)
public int getLocation(){
while (location <= 250) {
location = 5; // every loop this equals 5
location++;
}
return location;
}
每个循环设置的位置等于5。将其移至while()
之前,以便您只设置一次,然后每个循环递增一次。
public int getLocation(){
location = 5; // this equals 5 initially
while (location <= 250) {
location++; // this will now increment appropriately
}
return location;
}
答案 2 :(得分:-1)
你无法看到你是否失明。我使用了大量的print语句,以便我可以看到程序正在做什么。如果您不知道问题是什么,则不知道将打印语句放在何处。所以你可以看到很多印刷语句。