1

我对 Java 有点陌生,我想尝试从键盘接收输入。我知道我必须使用扫描仪,但是当我这样做时,程序不会等待输入。相反,它会立即抛出 NoSuchElementException。我尝试使用的代码如下:

import java.util.*;

public class Main {
    public static void main(String args[]) {
        int move = -1;
        String moveColumn = "";
        Scanner scan = new Scanner(System.in);

        System.out.print("Please enter a move: ");
        moveColumn = scan.next();
        move = Integer.parseInt(moveColumn);

        System.out.println("You chose " + moveColumn + ".");
    }
}

从我读过的所有内容来看,这段代码应该可以工作,但事实并非如此。有人可以指出我做错了什么,或者至少指出一些可以帮助我的资源吗?

4

3 回答 3

0

我在终端上运行了你的代码,它运行良好。程序等待一个数字(预期值)或一个字符串,这将引发预期的“NumberFormatException”。正如 Survivor 提到的(3 月 9 日),安装 Eclipse 或 Netbeans 等 IDE 是明智之举,因为它们提供了有用的调试工具。

于 2013-06-14T23:27:45.343 回答
-1

您可以替换 moveColumn = scan.next(); move = Integer.parseInt(moveColumn); 与 move = scan.nextInt()

于 2013-02-25T19:11:39.383 回答
-2

您可以使用 moveColumn = scan.nextLine();

于 2013-02-25T19:03:27.283 回答