Java无法读取输入

时间:2017-01-21 00:06:21

标签: java java.util.scanner

我正在尝试在我的代码中读取输入但由于某种原因我无法提交值。

如果输入是int,当我输入一个整数时,没有任何反应。我一直按下回车。我需要提一下,我使用的是Intellij Community Edition 2017.1 EAP。

以下是代码:

import java.util.Scanner;

/**
 * Created by David on 21/01/2017.
 */
public class Main {

    public static void main(String[] args) {
        int num;

        Scanner in = new Scanner(System.in);
        System.out.println("Enter a num: ");

        num = in.nextInt();

        System.out.print(num);
    }
}

输出:

Enter a num: 
5
6
3
aasd
1335

这里有什么问题?

1 个答案:

答案 0 :(得分:0)

目前,您只希望使用in.nextInt()来获取用户的整数。你应该做的是使用in.nextLine()然后根据输入解析输入,而不是假设它是一个整数。

public static void main(String[] args) {
    String input = "nothing...";

    Scanner in = new Scanner(System.in);
    //take in input until you type "exit"
    while(!input.equals("exit"))
    {
        System.out.println("Enter a num: ");
        input = in.nextLine();
        System.out.println(input); //use println() not print
    }
}