我编写了一个实现可比较接口(interface)的类。我使用 @NotNull 注释来抑制方法参数中的警告。但是还是提示警告。IDE自动为com.sun.istack.internal.NotNull导入这个包@NotNull。为什么会这样?不使用此注释如何删除此警告?
我正在将 Inteij Ultimate 与 java 8 SE 一起使用。
这是我的代码片段。

谢谢你。

最佳答案

显然,你应该使用

public int compareTo(@NonNull Node node) {

代替
public int compareTo(@NotNull Node node) {

编译器可以确定代码路径可能接收空值的情况,而无需调试 NullPointerException

来自 here.

对于这些注释,您需要安装 Checker Framework。或者您可以尝试其他答案所说的内容。

关于java - 为什么不@NotNull 注释删除警告?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31188852/

10-11 09:26