java循环有问题吗
我正在为学校做一个项目,我需要做一个关于从电脑猜数字的游戏。我的问题是,我的代码不会打印出“Het is fout”这句话,这意味着它们是错误的。它也不会打印他们多次尝试的句子,即使当他们超过限制时它停止了。我的老师不帮我,所以我迫切需要帮助。这是我写的代码:
while(leesinvoer() != toeval)
{
aantalkeer = aantalkeer + 1;
if(leesinvoer() == toeval)
{
System.out.println("Het is goed het goede nummer was:"+ toeval);
}
else
{
System.out.println("Het is fout");
}
if(aantalkeer > pogingen)
{
System.out.println("U heeft te vaak beprobeerd");
}
}
System.out.println(toevalsgetalmaken(grens));
}
public static int toevalsgetalmaken(int grens)
{
Random toeval = new Random();
int toevalsgetal = toeval.nextInt(grens);
return toevalsgetal;
}
public static int leesinvoer()
{
String tekst = JOptionPane.showInputDialog(null,"Doe een gok","GOKJE",3);
int getal = Integer.parseInt(tekst);
return getal;
}
非常感谢您的帮助
# 1 楼答案
每次在
if()
语句中检查leesinvoer()
时,必须调用它一次但是您的代码在每个循环中调用
leesinvoer()
两次:一次从while
语句调用,一次从if
语句调用因此,与
while(leesinvoer() != toeval)
dowhile(true)
不同,但更好的是,(因为这会给你一个编译器警告说“条件始终为真”),dofor(;;)
实际上是永远循环的然后,在每个
System.out()
语句(本质上表示一个决定,应该结束循环)之后,执行break;
退出循环戈德纳沃德!C-:=