检查对象数组中的对象在Java中是否为null

时间:2018-09-29 06:36:22

标签: java arrays object null

我有一个对象数组,我想使用一个名为“ AddProd()”的方法在该数组中添加对象。但是为了在该数组的正确情况下添加,我必须知道第一个空情况在哪里数组是。 这是Add方法:

  public void AddProd(Produit p){

    int notempty = 0;
    int i = 0;
    while(produits[i] != null){
        notempty++;
        i++;
    }

    if (notempty < 49) {
        produits[notempty + 1] = p;
    }
}

首先让我解释一下,我有一个while循环,检查第一个空情况在哪里。 while循环会不断递增(i ++),直到找到空的情况为止。 问题是当我运行时出现两个错误:

Exception in thread "main" java.lang.NullPointerException
    at prosit.pkg2.v1.pkg0.Magasin.AddProd(Magasin.java:27)
    at prosit.pkg2.v1.pkg0.main.main(main.java:22)
Java Result: 1
BUILD SUCCESSFUL (total time: 1 second)

这是(Magasin.java:27):while(produits[i] == null){ 我认为对null的比较是不正确的,第二个错误是当我在主类中调用该方法时。 任何解决方案都请,谢谢。

1 个答案:

答案 0 :(得分:0)

问题是您尚未初始化数组produits,它本身是null