Java扫描器不请求输入

Java扫描器不请求输入,java,java.util.scanner,Java,Java.util.scanner,这是我的代码,这是我的输出 System.out.println("Please enter the amount of money you have here: "); Scanner have = new Scanner(System.in); System.out.println("Please enter your starting bet here: "); Scanner rate = new Scanner(System.in); int moneyHad = Integer.p

这是我的代码,这是我的输出

System.out.println("Please enter the amount of money you have here: ");
Scanner have = new Scanner(System.in);
System.out.println("Please enter your starting bet here: ");
Scanner rate = new Scanner(System.in);

int moneyHad = Integer.parseInt(have.next());
int moneyRate = Integer.parseInt(rate.next());
System.out.println(moneyHad + ", " + moneyRate);
正如您所看到的,它会在发出请求之前将它们都打印出来,这就是为什么输出的第1行并没有输入

请快帮帮我

  • 无需创建2个扫描仪对象
  • 有一个方法返回int(scanner.nextInt()),无需解析int
  • 当您调用scanner.nextInt()时,输入为红色,而不是在创建scanner对象时
试试这个:

Please enter the amount of money you have here: 
Please enter your starting bet here: 1
1
1, 1

您只需要一个scanner对象,然后调用
nexInt()
方法来获取以下条目。

为什么要创建两个
scanner
对象?只需查看代码行的顺序,并思考每行的作用。或者使用调试器,以获得更深入的见解。一旦你这样做了,就不难找到问题所在。关于
Scanner
的提示:同一
InputStream
上的多个扫描器很可能会导致一些问题,而且根本不需要两个扫描器。Abubakkar Rangara,这是因为我需要两个输入。另外,为什么你只需要一个扫描器。是的,我在上面的评论中看到了这一点。
Scanner scanner = new Scanner(System.in);

        System.out.print("Please enter the amount of money you have here: ");
        int moneyHad = scanner.nextInt();
        System.out.print("Please enter your starting bet here: ");
        int moneyRate = scanner.nextInt();


        System.out.println(moneyHad + ", " + moneyRate);