本文介绍了如何在Try/Catch块之前初始化InputStream的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!,我需要获取文件名字符串,然后尝试打开该文件。如果找不到该文件,我将进行循环,直到输入正确的字符串。,当我尝试调用exampleMethod(InFile)时,NetBeans告诉我InputStream inFile可能尚未初始化。我认为这是因为赋值位于try Catch块内。正如大家所看到的,我尝试在循环外部声明对象,但没有成功。,我还尝试使用以下内容在循环外部初始化输入流:,还有这个:,如何确保在初始化此InputStream的同时仍允许循环,直到输入有效输入?,谢谢,要修复此问题,请更改以下代码行:,至此:,您必须这样做的原因是Java阻止您使用未初始化的局部变量。使用未初始化的变量通常是一个疏忽,因此Java不允许在此场景中使用它。正如@immibis指出的那样,这个变量将始终被初始化,但编译器在这种情况下不够聪明,无法计算出它。,这篇关于如何在Try/Catch块之前初始化InputStream的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,