java - 如何注释数组 NonNull?

标签 java eclipse non-nullable

我正在使用 org.eclipse.jdt.annotation.NonNull 为静态空值分析添加额外信息。我不知道如何正确注释数组:

  1. 我怎么能说数组引用是非空的?
  2. 我怎么能说数组由非空元素组成?

我测试过:

    public static void test(@NonNull String[] a) {
        assert a != null;
    }

    public static void main(String[] args) {
        test(null);
    }

但是,Eclipse 不会将 test(null); 标记为错误。

最佳答案

如果您使用的是 Java 8,它看起来如下:

@NonNull Object [] o1;

o1    = null;           // OK
o1    = new Object[1];
o1[0] = null;           // NOT OK

Object @NonNull[] o2;

o2    = null;           // NOT OK
o2    = new Object[1];
o2[0] = null;           // OK

关于java - 如何注释数组 NonNull?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29011893/

相关文章:

java - Android 可空和非空 : Method invocation 'getSearchableInfo' may produce 'NullPointerException'

java - 如何使 Java EE 中的授权可外部重新配置(在 war 文件之外)并可热重新配置?

java - 为什么这个通用的 java 代码不能编译?

java - 系统找不到Eclipse(Web项目)中指定的路径

java - 如何在 Eclipse 中查看包的源代码?

dart - 在 Dart 中,给定可空类型 `T?` ,我如何获得不可空类型 `T`

java - 我们如何在同一个 Spring 应用程序中同时添加 JWT 和基本身份验证?

java - Selenium - Internet Explorer - Java - 如何禁用图像加载?

java - 生成 EAR 时未添加项目实用程序 Jar

c# - 如果您可以创建不可为空的引用类型怎么办?