java只能使用Scanner一次
我对java有点陌生,习惯于用Python编写代码。因此,当涉及到获取用户输入时,我总是对执行这样的任务需要多少行代码感到恼火。所以我尝试创建自己的类来简化这个过程。我想表演这样的节目:
input("This is written in the console: ")
控制台内部:
This is written in the console: |
以下是迄今为止的代码:
public static String input(String text) {
Scanner scanner = new Scanner(System.in);
System.out.print(text);
String x = scanner.nextLine();
scanner.close();
return x;
}
当我使用该类一次时,一切正常,但当我再次尝试使用它时,我会遇到一个异常:
public static void main(String[] args) {
input("Input: ");
input("Input 2: ");
}
输出:
Input: blaaa
Input 2: Exception in thread "main" java.util.NoSuchElementException: No line found
at java.util.Scanner.nextLine(Unknown Source)
at NumberConverter.input(NumberConverter.java:124)
at NumberConverter.main(NumberConverter.java:7)
我真的不知道为什么总是这样。请帮帮我,谢谢
# 1 楼答案
多亏了“SomeJavaGuy”,我终于成功了: