Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 爪哇语;否则不带if“;错误。我做错了什么? 公共类猜谜游戏{ 公共静态void main(字符串[]args){ 双随机数=数学楼层((数学随机()*100)+1); Scanner userInputScanner=新扫描仪(System.in); 做{ System.out.println(“输入您的猜测”); System.out.println(“\n”); int Guess=userInputScanner.nextInt(); 如果(猜测==随机数) 系统输出打印(“良好”); 系统输出打印(“\n”); else if(猜测随机数) 系统输出打印(“下部”); System.out.println(“\n”); } while(猜测!=随机数); } }_Java - Fatal编程技术网

Java 爪哇语;否则不带if“;错误。我做错了什么? 公共类猜谜游戏{ 公共静态void main(字符串[]args){ 双随机数=数学楼层((数学随机()*100)+1); Scanner userInputScanner=新扫描仪(System.in); 做{ System.out.println(“输入您的猜测”); System.out.println(“\n”); int Guess=userInputScanner.nextInt(); 如果(猜测==随机数) 系统输出打印(“良好”); 系统输出打印(“\n”); else if(猜测随机数) 系统输出打印(“下部”); System.out.println(“\n”); } while(猜测!=随机数); } }

Java 爪哇语;否则不带if“;错误。我做错了什么? 公共类猜谜游戏{ 公共静态void main(字符串[]args){ 双随机数=数学楼层((数学随机()*100)+1); Scanner userInputScanner=新扫描仪(System.in); 做{ System.out.println(“输入您的猜测”); System.out.println(“\n”); int Guess=userInputScanner.nextInt(); 如果(猜测==随机数) 系统输出打印(“良好”); 系统输出打印(“\n”); else if(猜测随机数) 系统输出打印(“下部”); System.out.println(“\n”); } while(猜测!=随机数); } },java,Java,在if和if-else主体周围添加括号{},Java在if-else和缩进中的工作方式与python不同 public class GuessingGame { public static void main(String[] args){ double randomNumber = Math.floor((Math.random()*100)+1); Scanner userInputScanner = new Scanner(System.in);

在if和if-else主体周围添加括号
{}
,Java在if-else和缩进中的工作方式与python不同

public class GuessingGame {

    public static void main(String[] args){
        double randomNumber = Math.floor((Math.random()*100)+1);
        Scanner userInputScanner = new Scanner(System.in);
        do {
            System.out.println("Enter your guess");
            System.out.println("\n");
            int Guess = userInputScanner.nextInt();

            if(Guess == randomNumber)

                System.out.print("Good");

                System.out.print("\n");

            else if(Guess < randomNumber)

                System.out.print("Higher");

                System.out.println("\n");

            else if(Guess > randomNumber)

                System.out.print("Lower");

                System.out.println("\n");
        }
        while(Guess != randomNumber);

    }
}
if(Guess==randomNumber){
系统输出打印(“良好”);
系统输出打印(“\n”);
}else if(猜测<随机数){
系统输出打印(“更高”);
System.out.println(“\n”);
}else if(猜测>随机数){
系统输出打印(“下部”);
System.out.println(“\n”);
}

应该是这样的:

if(Guess == randomNumber) { 
    System.out.print("Good");

    System.out.print("\n");

} else if(Guess < randomNumber) {

    System.out.print("Higher");

    System.out.println("\n");

} else if(Guess > randomNumber) {

    System.out.print("Lower");

    System.out.println("\n");
}
if(猜测==随机数){
系统输出打印(“良好”);
系统输出打印(“\n”);
}else if(猜测<随机数){
系统输出打印(“更高”);
System.out.println(“\n”);
}else if(猜测>随机数){
系统输出打印(“下部”);
System.out.println(“\n”);}

如果else周围有大括号。

问题是,您试图在一个
if
块中放置多个语句,而不使用大括号。在其他语言中,缩进控制结构,但Java是自由形式的,因此没有大括号,每个
if
/
else
只对一条语句进行分组


因此,程序将第一个语句分组到
if
,然后下一个语句是单独的,那么您就有了一个
else
,没有紧跟在前面的
if

您需要在每个if条件之后添加
{}
,并且猜测变量需要在do while之前声明 这里有完整的代码,已经编译好了,没有错

if(Guess == randomNumber){
    System.out.print("Good");

    System.out.print("\n");

}else if(Guess < randomNumber){

    System.out.print("Higher");

    System.out.println("\n");

}else if(Guess > randomNumber){

    System.out.print("Lower");

    System.out.println("\n");}
import java.util.Scanner;
公开课猜谜游戏{
公共静态void main(字符串[]args){
双随机数=数学楼层((数学随机()*100)+1);
Scanner userInputScanner=新扫描仪(System.in);
int Guess=0;
做{
System.out.println(“输入您的猜测”);
System.out.println(“\n”);
Guess=userInputScanner.nextInt();
如果(猜测==随机数){
系统输出打印(“良好”);
系统输出打印(“\n”);
}
else if(猜测<随机数){
系统输出打印(“更高”);
System.out.println(“\n”);
}
else if(猜测>随机数){
系统输出打印(“下部”);
System.out.println(“\n”);
}
}
while(猜测!=随机数);
}
}

您忘记了if和else语句的大括号。您也不需要最后一个
else if
,因为您的代码块不可能有其他可能的结果。一个数字等于、大于或小于另一个数字,因此您可以简单地省略条件并使用
else
与Python不同,我们需要以其他方式添加大括号,即使您缩进代码,它也不会显示适当的结果。您可能需要添加一个示例;)
import java.util.Scanner;

public class GuessingGame{



public static void main(String[] args){


double randomNumber = Math.floor((Math.random()*100)+1);
Scanner userInputScanner = new Scanner(System.in);
int Guess = 0;

do{

    System.out.println("Enter your guess");
    System.out.println("\n");

    Guess = userInputScanner.nextInt();

    if(Guess == randomNumber) {
        System.out.print("Good");
        System.out.print("\n");
    }
    else if(Guess < randomNumber) {
        System.out.print("Higher");
        System.out.println("\n");
    }
    else if(Guess > randomNumber) {
        System.out.print("Lower");
        System.out.println("\n");
    }
}
while(Guess != randomNumber);



}
}