java - 如果它是 Java 中的整数数组,如何检查 null 元素?

标签 java arrays null int

我是 Java 的新手,在检查整数数组中的空元素时遇到问题。 我正在使用 Eclipse 作为编辑器,检查 null 元素的行显示错误:

提示的线路:

if(a[i] != null) {

来自 Eclipse 的错误消息:

The operator != is undefined for the argument type(s) int, null

在 PHP 中,这没有任何问题,但在 Java 中,似乎我必须将数组类型从整数更改为 Object 以使行不提示(如下所示)

Object[] a = new Object[3];

所以我的问题是如果我仍然想声明为整数数组并且仍然想检查空值, 它的语法是什么?

代码:

public void test() {
        int[] a = new int[3];
        for(int i=0; i<a.length; i++) {
            if(a[i] != null) { //this line complains...
                System.out.println('null!');
            }
        }
    }

最佳答案

在 Java 中,int 是原始类型,不能为 null。然而,对象存储为引用,因此如果您声明一个对象引用但不创建一个对象,该引用将为null

Integersints 的对象包装器,这意味着它们可以是 null

public void test() {
        Integer[] a = new Integer[3];
        for(int i=0; i<a.length; i++) {
            if(a[i] != null) { //should now compile
                System.out.println('null!');
            }
        }
    }

关于java - 如果它是 Java 中的整数数组,如何检查 null 元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3033633/

相关文章:

javascript - 使用 "*"运算符在输入内进行乘法

java - 在 PreparedStatement 中绑定(bind)空变量

java - java程序中通过互联网进行更新检查

java - ConcurrentHashMap JDK1.7 中的“scanAndLockForPut”

c - 如何在数组中的每个元素后面插入一个新元素?

java - 将字符串与数组列表进行比较,看看该字符串是否包含列表中的任何内容

JavaScript 空值检查

ruby-on-rails - 有没有一种干净的方法来避免在嵌套的参数哈希中调用 nil 上的方法?

java - 数字 "41794"和今天的日期(即 04/06/2014)之间有什么关系?

Java:两个具有相同速度的背景相互重叠