0

どうすれば回避できNullPointerExceptionsますか?ブロックを使ってみtry-catchましたが、うまくいきませんでした。

私のプログラムはGoogleカレンダーからデータを取得することになっています。私は多くの要素を取得していますが、ここでは例として1つの要素にすぎません...

for (Iterator<?> i = eventsToday.iterator(); i.hasNext();) {
    Component component = (Component) i.next();
    String Attachement=null;
    if(component.getProperty(Property.ATTACH).toString().trim()!=null){
        Attachement=component.getProperty(Property.ATTACH).toString();
    }
}

誰かがこれを手伝ってくれませんか。

4

2 に答える 2

7

component.getProperty() == nullnullポインタ例外がtoString()nullオブジェクトで呼び出されたことが原因であるかどうかをテストします。次の例が機能します。Object o(によって返される実際のタイプに置き換えますgetProperty()

String Attachment;
Object o = component.getProperty(Property.ATTACH);
if(o != null) {
   Attachment = component.getProperty(Property.ATTACH).toString();
}
于 2012-06-20T00:56:58.990 に答える
0

問題はおそらく

component.getProperty(Property.ATTACH)

nullを返しています

チェックするコードを追加するだけです

if (component.getProperty(Property.ATTACH)) {
    Attachement = component.getProperty(Property.ATTACH).toString();
}

あなたはおそらくキャッシュしたいcomponent.getProperty(Property.ATTACH)

于 2012-06-20T00:57:11.160 に答える