配列内の文字列を取得しようとしている間に、NullPointerExceptionが発生し続けます(ベクター内にカプセル化されています)。私は起こってからのエラーを停止するように見えることはできません。それは単純なものでなければなりませんが、私はそれをあまりにも長く見ていると思います。確かに別の目を使うことができます。ここに私のコードは次のとおりです。java array nullpointerexceptionに関するヘルプ
Vector<Event> details = vector.get(i).getEvent();
for (int x = 0; x < details.size(); x++) {
Event eDetails = details.get(x);
person = eDetails.getEventPerson();
place = eDetails.getEventPlace()[0];
time = eDetails.getEventTime()[0];
}
だから私は(xが0の場合)にNullPointerExceptionがスローされeDetails.getEventTime、から返される配列内の位置0にある項目を取得しようとします。
xが0の場合、getEventTime()配列の位置0の配列要素は空の文字列ですが、null値ではありません。 xが1または2の時など、私はちょうどいい時間を取得することができます。
**System.out.println(eDetails.getEventTime.length);**
or
String result;
**if(eDetails.getEventTime[0] == null){**
result = "";
} else {
result = eDetails.getEventTime[0];
}
任意のアイデア:
問題は、私は、次のようなことをしようとすると、私はまだNullPointerExceptionが受け取るということですか?
ありがとうございます!
2番目のコードブロックで 'getEventTime()[0]'を意味すると思いますか?また、オブジェクトをどのように埋め込むかを実際には示していません。 – Jeremy
@Jeremy 'getEventTime()[0]'は 'getEventTime [0]'がコンパイルされないので(メソッドは配列ではありません)、 – extraneon
@extraneon - 私はそれを知っています。それが私が想定した理由です。私はOPと明確にしようとしていた。しかし、OPにpublicインスタンス変数 'getEventTime'があれば、どうでしょうか? – Jeremy