gpt4 book ai didi

java - java中BufferReader的异常处理

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:14:08 25 4
gpt4 key购买 nike

在这个简单的程序中,为什么我必须处理异常?

public static void main (String args[ ]) throws IOException
{
BufferedReader in = new BufferedReader(
new InputStreamReader(System.in));

System.out.print("Insert something : ");
System.out.println("You inserted : "+in.readLine());
}

最佳答案

从标准输入读取不太可能导致任何类型的 IOException。但是,BufferedReader 并不知道这一点,它假设它包装的任何东西都会抛出 IOException 而它只是传递它。我会考虑改用 java.util.Scanner 类,以避免 BufferedReader 在这里检查异常的烦恼。

JVM 将在程序终止时为您处理关闭标准输入,因此关闭读取器应该不是问题,除非您最终可能需要刷新 BufferedReader 以获取其所有内容。这是更喜欢 Scanner 的另一个原因。

对于一个小程序,让 main 方法抛出异常可能很好,这些异常将被写入控制台(具体来说,是 stderr)。只要那是你想要的行为,在这里抛出 IOException 就可以了。在现实生活中,程序可以从 shell 脚本执行,shell 脚本可以将程序的输出重定向到一个文件,这样程序抛出的任何内容都会被记录下来。

关于java - java中BufferReader的异常处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23270513/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com