【问题标题】:Java Scanner Input Errors [closed]Java 扫描程序输入错误 [关闭]
【发布时间】:2013-12-19 02:32:05
【问题描述】:

我正在制作一个简单的 Java 游戏,名为 21 sticks。一开始,我想问用户他/她的名字,这样我就可以在接下来的游戏中通过他们的名字来引用他们。但是,当我使用我的代码(如下)时,首先input 下方有日食红色波浪线,表示错误。这不是编译。我曾尝试用谷歌搜索解决此问题的方法,或者是否有更好的方法来解决此问题,但我什么都不喜欢。我尝试将input 更改为inputMap,但随后nextLine 不起作用。我想知道为什么这会显示为错误,以及是否有更好的方法来询问用户的姓名。

我的代码:

import java.util.Scanner;

public class TwentyOneSticks { 
  public static void main(String[] args) {
    System.out.println("What is your name?")
    String userName = input.nextLine()
    int numofSticks = 21;
    Scanner input = new Scanner(System.in);
    Scanner take = new Scanner(System.in);
    System.out.println("Would you like to go first? (Y/N)");
    String goFirst = input.nextLine();

【问题讨论】:

  • 好吧,考虑到您试图在 Scanner 存在之前使用它......这可能是个问题。
  • @pita 每个人都必须从某个地方开始。

标签: java eclipse


【解决方案1】:

试试

import java.util.Scanner;

public class TwentyOneSticks { 
public static void main(String[] args) { 
 System.out.println("What is your name?");
 Scanner input = new Scanner(System.in);   <--- moved it here
 String userName = input.nextLine();
 int numofSticks = 21;

  //Scanner take = new Scanner(System.in);   <-- what is use of this?
  System.out.println("Would you like to go first? (Y/N)");
  String goFirst = input.nextLine();

你必须在使用它之前声明(并初始化)一个变量。还缺少一些分号。

【讨论】:

  • printlnnextLine() 之后也缺少几个分号。
  • 大声笑 - 哦,男孩,那些日子之一
  • @user2310289 谢谢。 Scanner take = new Scanner(System.in); 是我代码后面的东西,我只是忘了把它拿出来。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-04
  • 2019-11-08
相关资源
最近更新 更多