1

我有一个包含 18 个对象的数组,该数组被分配有 25 个对象(其余 7 个对象为空,以备将来使用)。我正在编写一个打印出所有非空对象的程序,但我正在运行 aNullPointerException并且我无法弄清楚如何绕过它。

当我尝试这个时,程序崩溃Exception in thread "main" java.lang.NullPointerException

        for(int x = 0; x < inArray.length; x++)
        {
            if(inArray[x].getFirstName() != null)//Here we make sure a specific value is not null
            {
                writer.write(inArray[x].toString());
                writer.newLine();
            }
        }

当我尝试这个时,程序运行,但仍然打印空值:

        for(int x = 0; x < inArray.length; x++)
        {
            if(inArray[x] != null)//Here we make sure the whole object is not null
            {
                writer.write(inArray[x].toString());
                writer.newLine();
            }
        }

谁能指出我处理数组中空对象的正确方向?感谢所有帮助!

4

1 回答 1

9

你的支票应该是:

if(inArray[x] != null && inArray[x].getFirstName() != null)
于 2012-05-08T17:49:08.817 回答