如何在java中抑制空指针访问警告



我使用的是eclipse IDE。

我有一个抛出NullPointerException的代码,我正在使用try/catchblock处理异常

这是我的代码-

String name = null;
int length = 0;
try {
length = name.length();
System.out.println("Number of letters in name: " + length);
} catch(NullPointerException e) {
System.out.println("NullPointerException occured");
}
System.out.println("I am being executed");

在具有identifierlength的线路上的tryblock内,我有警告-

Null pointer access: The variable name can only be null at this location

我正试图通过使用-来抑制警告

@SuppressWarnings("all")
length = name.length();

在具有identifierlength的线路上,我出现了错误-

Multiple markers at this line -
- Syntax error on token "length", VariableDecalaratorId expected after this token
- Null pointer access: The variable name can only be null at this location
- length cannot be resolved to a type

如何解决这个问题?

我不希望我的程序显示这个警告,因为我知道我在做什么。

感谢@Slaw对这个答案的评论-

我以以下方式修改了我的代码-

String name = null;
int length = 0;
boolean flag = false;
if(flag) {
name = "abcd";
}
try {
length = name.length();
System.out.println("Number of letters in name: " + length);
} catch(NullPointerException e) {
System.out.println("NullPointerException occured");
}
System.out.println("I am being executed");

现在我不再有警告了。

在这里,正如@Slaw所建议的那样,我确保variablename有可能不是null

最新更新