1

18個のオブジェクトを含む配列があり、その配列には25個のオブジェクトが含まれるように割り当てられています(残りの7個のオブジェクトは将来の使用のためにnullです)。null以外のすべてのオブジェクトを出力するプログラムを作成していますが、に実行されており、NullPointerExceptionそれを回避する方法がわかりません。

これを試してみると、プログラムは次のようにクラッシュし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();
            }
        }

そして、これを試してみると、プログラムは実行されますが、それでもnullが出力されます。

        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();
            }
        }

誰かが配列内のnullオブジェクトを処理するための正しい方向に私を向けることができますか?すべての助けに感謝します!

4

1 に答える 1

9

チェックは次のようになります。

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