Java 是否尝试使用else-if语句?

Java 是否尝试使用else-if语句?,java,Java,我的代码是一个猜测游戏:用户可以选择5次、10次或20次尝试,并有那么多次机会猜测计算机选择的随机数。我的代码接受每个猜测,如果他们的猜测高于或低于随机数,如果他们的猜测是错误的,则打印出来,如果他们的猜测是正确的,则打印出一条祝贺消息。 我需要有一条信息说:“对不起,(用户名),你没有猜到神奇的数字,(随机数字),在(他们选择了多少次猜测)尝试中。” 这只是在他们用尽所有的猜测,仍然没有猜出数字之后。 我在编写代码时遇到了一个错误,说我有一个没有If的else,但我觉得这可能不是我唯一的问题。

我的代码是一个猜测游戏:用户可以选择5次、10次或20次尝试,并有那么多次机会猜测计算机选择的随机数。我的代码接受每个猜测,如果他们的猜测高于或低于随机数,如果他们的猜测是错误的,则打印出来,如果他们的猜测是正确的,则打印出一条祝贺消息。 我需要有一条信息说:“对不起,(用户名),你没有猜到神奇的数字,(随机数字),在(他们选择了多少次猜测)尝试中。” 这只是在他们用尽所有的猜测,仍然没有猜出数字之后。 我在编写代码时遇到了一个错误,说我有一个没有If的else,但我觉得这可能不是我唯一的问题。有人能告诉我如何在我的代码中包含这个吗? 这是:

这将对您有所帮助

 for(int i = 1; i <= numberOfGuesses; i++){
   System.out.print("Enter guess #"+i+": ");
   guess = scan.nextInt();
        if (guess > randomNumber)
                    System.out.println("Your guess, "+guess+", is greater than the magic number.");
        else if (guess < randomNumber)
                    System.out.println("Your guess, "+guess+" is less than the magic number.");
        else if (guess == randomNumber){
                    System.out.println("Congratulations, "+name+"! You guessed the magic number in "+i+" guesses.");
                    break;
                }
        if (i == numberOfGuesses)
             System.out.println("Sorry, "+ name+"you did not guess the magic number,"+ randomNumber+"in"+numberOfGuesses+ "tries.");

    }
错误在于:

break;
使用break时,if语句将被取消。这就是为什么你会犯这样的错误

想一想:

您在后面放置了一个if语句和几个else if

当你说“break”时,你的程序假设你已经完成了所有的语句,并期望有新的开始

在您的代码中,“somethinew”是一个else,它显然不起作用,因为没有if语句可以逻辑访问

长话短说-当使用ifelse if时,实际上不需要使用break。在大多数情况下,花括号是足够的


我希望这对你有帮助。如果您还有任何问题,请联系我。

尝试在您的If语句中添加大括号。缺少大括号可能会导致Java认为没有相应的else语句,特别是因为if块是多行的。如果您不够自信,请不要在普通的文本板中编写代码。试试IDE。它将向您显示语法检查错误。
break;