Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.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的猜测计数显示错误_Java - Fatal编程技术网

java的猜测计数显示错误

java的猜测计数显示错误,java,Java,我试图显示用户猜测的次数,这些是错误: java:44:不是一个语句 System.out.println{“猜测次数:“+guessCount”); ^java:44:“;”应为 System.out.println{“猜测次数:“+guessCount”); ^java:44:不是一个语句 System.out.println{“猜测次数:“+guessCount”); ^java:44:“;”应为 System.out.println{“猜测次数:“+guessCount”); ^java

我试图显示用户猜测的次数,这些是错误

java:44:不是一个语句 System.out.println{“猜测次数:“+guessCount”); ^java:44:“;”应为 System.out.println{“猜测次数:“+guessCount”); ^java:44:不是一个语句 System.out.println{“猜测次数:“+guessCount”); ^java:44:“;”应为 System.out.println{“猜测次数:“+guessCount”); ^java:48:解析时到达文件结尾}

我的代码是:

import java.util.Random;
import java.util.Scanner;

public class NumberGame
{
    public static void main(String[] args)
    {
        final int MAX_NUMER = 100;

      int number = rand.nextInt(MAX_NUMBER) + 1;
        int on_off = 1;
      int guessCount = 0;
      int guess; 


      Random rand = new Random();
        Scanner keyboard = new Scanner(System.in);

        while(on_off == 1)
      {
            System.out.print("Guess a number between 1 and 100: ");
         guess = keyboard.nextInt();
         guessCount++;

            if(guess < number)
         {

            System.out.println("Too Low");
            guessCount++;
            }

            if(guess > number)
         {

            System.out.println("Too High");
            guessCount++;
            }

            if(guess == number)
         {

            System.out.println("Correct! You win!");
            }

        }
         System.out.println{"Number of guesses: " + guessCount};

    }
}
import java.util.Random;
导入java.util.Scanner;
公共类号码表
{
公共静态void main(字符串[]args)
{
最终整数最大值=100;
整数=rand.nextInt(最大值)+1;
int on_off=1;
int猜测计数=0;
智力猜测;
Random rand=新的Random();
扫描仪键盘=新扫描仪(System.in);
while(开/关==1)
{
打印(“猜一个介于1和100之间的数字:”;
guess=keyboard.nextInt();
猜数++;
如果(猜测<数字)
{
System.out.println(“过低”);
猜数++;
}
如果(猜测>数字)
{
System.out.println(“过高”);
猜数++;
}
如果(猜测==数字)
{
System.out.println(“正确!你赢了!”);
}
}
System.out.println{“猜测次数:+guessCount};
}
}
非常感谢您的帮助!谢谢您的时间

 System.out.println{"Number of guesses: " + guessCount);
应该是

 System.out.println("Number of guesses: " + guessCount);
 int number = rand.nextInt(MAX_NUMER) + 1; //you decalred final int MAX_NUMER 
您在那里输入了一个错误。您编写了
{
而不是

排队

 int number = rand.nextInt(MAX_NUMBER) + 1;
您尚未声明
rand

整数=rand.nextInt(最大值)+1

应该是

 System.out.println("Number of guesses: " + guessCount);
 int number = rand.nextInt(MAX_NUMER) + 1; //you decalred final int MAX_NUMER 

PS:我建议你使用IDE,这样可以节省你很多时间。

你有语法错误。仔细看你的行。你有一个
{
而不是

括号不匹配

根据您的评论进一步解释:

import java.util.Random;
import java.util.Scanner;

public class NumberGame
{
    public static void main(String[] args)
    {
        final int MAX_NUMER = 100;

      int number = rand.nextInt(MAX_NUMBER) + 1;
        int on_off = 1;
      int guessCount = 0;
      int guess; 


      Random rand = new Random();
        Scanner keyboard = new Scanner(System.in);

        while(on_off == 1)
      {
            System.out.print("Guess a number between 1 and 100: ");
         guess = keyboard.nextInt();
         guessCount++;

            if(guess < number)
         {

            System.out.println("Too Low");
            guessCount++;
            }

            if(guess > number)
         {

            System.out.println("Too High");
            guessCount++;
            }

            if(guess == number)
         {

            System.out.println("Correct! You win!");
            }

        }
         System.out.println{"Number of guesses: " + guessCount};

    }
}
花括号
{}
通常表示一个代码块,在非常简单的意义上,您可以将代码分组为一种单数语句(即
if(x==1){statements;}else{more statements;}


括号
()
可以用作函数的一部分。在您的示例中,
System.out.println
是一个供您使用的函数。在
()
中,您传递参数/参数。在这种情况下,您传递的是希望Java打印出来的字符串。对于
System.out.println()
,您需要括号,而不是大括号。

使用
代替
{
println
中的大括号您的代码中有一个输入错误:

System.out.println{"Number of guesses: " + guessCount);
左括号错误。应为:

System.out.println("Number of guesses: " + guessCount);
此外,变量名中也有输入错误:

final int MAX_NUMER = 100;
应该是

final int MAX_NUMBER = 100;

希望这有帮助

您更正的语法似乎已将右括号(
替换为右大括号(

在这里,我用第44行中的
{
替换了
)。此外,我在第8行中修复了一个拼写错误,您在该行中编写了
MAX\u NUMER
,而不是
MAX\u NUMER
。此外,
rand
在首次使用之前需要声明和初始化,因此我将其上移到指定
NUMBER
值的位置

对于第一个错误,方法调用使用括号,而不是大括号;大括号用于代码块,如类中的代码或方法体

第二个错误只是一个打字错误,很无趣

不声明和初始化rand的第三个错误是:在使用变量之前需要声明变量,而对于Random,在首次使用变量之前需要初始化变量

import java.util.Random;
import java.util.Scanner;

public class NumberGame
{
    public static void main(String[] args)
    {
        final int MAX_NUMBER = 100;

        Random rand = new Random();

        int number = rand.nextInt(MAX_NUMBER) + 1;
        int on_off = 1;
        int guessCount = 0;
        int guess; 

        Scanner keyboard = new Scanner(System.in);

        while(on_off == 1)
        {
            System.out.print("Guess a number between 1 and 100: ");
            guess = keyboard.nextInt();
            guessCount++;

            if(guess < number)
            {
                System.out.println("Too Low");
                guessCount++;
            }

            if(guess > number)
            {
                System.out.println("Too High");
                guessCount++;
            }

            if(guess == number)
            {
                System.out.println("Correct! You win!");
            }
            System.out.println("Number of guesses: " + guessCount);
        }
    }
}
import java.util.Random;
导入java.util.Scanner;
公共类号码表
{
公共静态void main(字符串[]args)
{
最终整数最大值=100;
Random rand=新的Random();
整数=rand.nextInt(最大值)+1;
int on_off=1;
int猜测计数=0;
智力猜测;
扫描仪键盘=新扫描仪(System.in);
while(开/关==1)
{
打印(“猜一个介于1和100之间的数字:”;
guess=keyboard.nextInt();
猜数++;
如果(猜测<数字)
{
System.out.println(“过低”);
猜数++;
}
如果(猜测>数字)
{
System.out.println(“过高”);
猜数++;
}
如果(猜测==数字)
{
System.out.println(“正确!你赢了!”);
}
System.out.println(“猜测次数:+guessCount”);
}
}
}

System.out.println{“猜测次数:”+guessCount)中的括号中间有一个大括号这个问题似乎离题了,因为它是关于打字错误的。不太可能对未来的访问者有帮助。您的代码有三个问题。
System.out.println
是一个函数,所以您可以像这样使用括号:
System.out.println(“Hello world!”)
。您在第8行输入了错误的
MAX_NUMBER
。您还需要在第一次使用
rand
之前声明并初始化它。请查看我的答案以查看编译的代码,以及更详细的信息。@madth3 False,这是关于对
{}
()
。它可以帮助可能有类似误解的初学者