java.util.NoSuchElementException:找不到行。在此之前有效,但以后不会生效。我不知道为什么

时间:2018-10-06 01:11:20

标签: java java.util.scanner

我正在尝试制作一款游戏,无论出于何种原因,扫描仪以前都使用一种单独的方法工作,但不适用于这种方法。

适用于:

this.getUpdate()

不适用于:

Scanner in = new Scanner(System.in); // Scanner in case of invalid input

for (int i = 1; i <= p.getSpeed(); i++) { // loop to account for invalid direction

if (d.equalsIgnoreCase("right") || d.equalsIgnoreCase("r") && p.getX() <= width - 2) { // right

    if (board[p.getY()][p.getX() + 1] == ' ') {
        board[p.getY()][p.getX()] = ' ';
        p.setX(p.getX() + 1);
        board[p.getY()][p.getX()] = 'P';
    }

    else { // right not open
        System.out.println("Please input a valid direction");
        d = in.nextLine();
        i--;
    }

}

所有方法都能正常工作并且逻辑很好,我只是不知道为什么它适用于第一个方法而不是第二个方法

1 个答案:

答案 0 :(得分:-1)

关闭第一个扫描仪是问题所在,摆脱了固定的代码。谢谢查尔斯