读取控制台输入:IOException

时间:2014-09-12 23:28:00

标签: java input console-application ioexception

我创建了一个将控制台输入读取为整数

的方法
public static Integer readInteger() throws IOException {
    BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

    try {
        return Integer.parseInt(reader.readLine());
    } catch (NumberFormatException e) {
        return null;
    }
}

我必须包含throws IOException但是在这种情况下,只要System.in没有关闭,可能会抛出IOException吗?

2 个答案:

答案 0 :(得分:0)

这是一个重的" java中的主题。

现在大多数java程序员现在都同意,检查异常是愚蠢和冗余的,不应该存在。

在你的情况下,如果关闭怎么办?编译器不知道程序何时运行,也不知道他将在什么环境下运行。

如果运行程序的当前用户没有写入控制台的权限怎么办?

我可以坚持下去,但我认为你明白了。

答案 1 :(得分:0)

我同意David Limkys的说法。

Class IOException表示发生了某种类型的I / O异常。 此类是由失败或中断的I / O操作产生的一般异常类。