只能使用一次扫描仪



我是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();
}

相关内容

  • 没有找到相关文章

最新更新