遇到java循环问题

时间:2017-07-02 19:24:41

标签: java loops

我正在为学校做一个项目,我需要制作一个关于从计算机猜测数字的游戏。我遇到的问题是我的代码不打印出句子“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 个答案:

答案 0 :(得分:0)

每次在leesinvoer()声明中查看时,都必须调用一次if()

但是你的代码在每个循环中调用leesinvoer()两次:一次来自while语句,一次来自if语句。

所以,而不是while(leesinvoer() != toeval)while(true),但更好的是,(因为这应该给你一个编译器警告说“条件总是正确的”),执行for(;;)本质上循环永远。

然后,在每个System.out()语句之后(基本上表示决定,应该结束循环),执行break;退出循环。

Goedenavond! Ç - :=