当前位置: 首页 > 知识库问答 >
问题:

在Java中使用Scanner时获取和出错

穆理
2023-03-14

我试着从用户那里获取一个输入,让这个程序从一些更复杂的东西开始。然而,无论我尝试什么,我都会遇到以下错误:

Exception in thread "main" java.util.NoSuchElementException: No line found
at java.base/java.util.Scanner.nextLine(Scanner.java:1651)
at Main.main(Main.java:8)

我在这里运行此代码:

import java.util.Scanner;

class Main {
  public static void main(String[] args) {
    Scanner test = new Scanner(System.in);
    String x = test.nextLine();
    System.out.println(x);

  }
}

任何帮助都非常感谢!

共有1个答案

向弘懿
2023-03-14

您必须先检查nextLine()是否存在。试试这个:

import java.util.Scanner;

class Main {

   public static void main(String[] args) {
      Scanner test = new Scanner(System.in);

      while (test.hasNextLine()) {
         string = test.nextLine();
         System.out.println(string);
      }
   }
}
 类似资料:
  • 问题内容: 我的csv正在读入System.out,但是我注意到任何带空格的文本都移到下一行(作为返回\ n) 这是我的csv的启动方式: 运行我的应用程序后,任何带有空格(地址1)的单元格都将扔到下一行。 因此,这是控制台中的结果: 我使用扫描仪的方式有误吗? 问题答案: 这应该工作。 对于CSV文件: 输出为:

  • GradleSpring引导代码分析使用SonarQube通过Jenkins抛出错误。 我在Gradle spring boot项目的根目录下有我的sonar-project.properties文件,其中有以下详细信息 在Jenkins中的“全局工具配置”下,SonarQube扫描器配置为 在Jenkinsfile中,阶段定义为 运行作业时,会出现以下错误 显然sonar.java.binari

  • 问题内容: 有没有办法获取Java中的Method Scanner获得的字符串中的令牌数量? 我的意思是,我可以使用它来获取输入字符串。但是在这个字符串上我不能使用方法,因为它给了我字符总数(我认为)。 是否存在获取令牌数量的标准方法?提前致谢 问题答案: 试试这个: 有关更多详细信息,请参见StringTokenizer。

  • 我是一个编程初学者,我一直在做一个小项目,著名的游戏叫做俄罗斯方块,我遇到了这个小问题,我希望你能帮助我解决这个问题。我导入了:和以便能够使用我的键盘玩游戏,但是当我扩展我创建的类以使用这些键时,它显示了一个错误!! 错误发生在这里,说: 类TAdapter扩展keyAdapter{//第二个发生在此处:keyAdapter不能//解析为类型public void keyPressed(keyEv