java使用控制台输入进行循环

时间:2017-04-26 02:39:48

标签: java loops exception exception-handling do-while

论坛新手。尝试搜索但找不到任何帮助。我在没有问题的情况下使用java 1.7在另一个IDE上运行此代码。我现在正在使用Eclipse并将java更新为1.8并且收到错误:关于line" response = input.nextLine();"的java.util.NoSuchElementException。奇怪的是,我有另一个函数返回一个字符串,并使用完全相同的循环编码(使用模式检查执行/同时),它似乎工作正常。

static boolean search_again() {
    String response;
    //Scanner input = new Scanner(System.in);
    do {
        System.out.println("Would you like to search another site? ");
        Scanner input = new Scanner(System.in);
        response = input.nextLine();
        input.reset();            
    }
    while(!response.toUpperCase().matches("Y|YE|YES") && !response.toUpperCase().matches("N|NO"));
    if (response.matches("[nN[oO]?]")) {
        System.out.println("Goodbye");
        return false;
    }
    else {
        System.out.println("OK - search again!");
        return true;
    }
}

1 个答案:

答案 0 :(得分:0)

看起来您无法使用相同的输入重新启动扫描仪。我让扫描仪全局化,似乎又恢复了工作