我是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)
我真的不知道为什么会发生这种情况。请帮助我,谢谢。
感谢" Somejavaguy",我终于使它工作了:
public class NumberConverter {
private static Scanner scanner = new Scanner(System.in);
public static String input(String text) {
System.out.print(text);
String x = scanner.nextLine();
return x;
}
public static void main(String[] args) {
input("Write your Input: ");
input("Write another Input: ");
scanner.close();
}