java - 当检查在方法内部时,如何避免空指针访问警告?

标签 java eclipse java-8

我处理了以下方法:

boolean isNullOrEmpty(String s) {
  return s == null || s.length() == 0;
}

问题是,它与@Nullable 不兼容。例如,在下面的代码中,在不应该显示的时候会显示警告。

void test(@Nullable String s) {
  if (!isNullOrEmpty(s)) {
    s.length(); // warning : o may be null
  }
}

有没有办法在保留 isNullOrEmptyNullable 的同时让这个警告消失?

最佳答案

你有理由不使用 if (o != null) 吗?

Objects.isNull 的目的是用作谓词: .filter(对象::isNull)

虽然这个警告可能是一个错误。如果你真的想让它消失,你可以用@SuppressWarnings 注释你的方法

关于java - 当检查在方法内部时,如何避免空指针访问警告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34652459/

相关文章:

java - 如何在 Eclipse 探查器中显示 java.lang.* 对象分配?

java - 包含具有通用 Map.Entry 参数的方法

java - 是否有可能在 Stream 中获取下一个元素?

java - 我可以根据java中的特定条件用不同的对象初始化相同的变量名吗?

java - Facebook 支持 Java 和 C++

java - 使用java.util.Optional为Optional类型的子字段返回null

java - 为什么一根长字符串比许多小字符串占用更多空间?

c++ - 如何在 Eclipse 中指定 C++ 系统包含路径?

eclipse - Project Lombok 是否与 Scala 配合良好?

java - 为什么接口(interface)的泛型方法可以在 Java 中实现为非泛型?