2017-04-12 5 views
-3

オブジェクトがヌルか空であるかどうかを確認する必要があります。Androidアプリケーションが単純なif文でクラッシュする

マイコード:

if(objectList == null || objectList.isEmpty()) { 
    //Log error here 
} 

objectListは、それが空の場合、それがnullのオブジェクト参照をチェックインすることができないと言ってクラッシュしたnullの場合if文これを書いた後。なぜこうなった?

+0

nullの場合、それがどのように空であるかをチェックする方法 –

+0

この問題は可能なもののようには見えません。あなたはインスタント実行を使用して、あなたのコードがデバイス内で最新ではありませんか? –

+1

@PhanVanLinh、これにより、objectListがnullの場合にNPEが発生します。 –

答えて

1

がクラッシュすることはありません試してみて、キャッチすることができソリューション

if((objectList !=null) && (objectList.size()>0)) { 
    // your implemention 
}else{ 
    // your error log here 
} 
0

あなたはobjectList.isEmpty()を呼び出す前に

try{ 
     if(objectList == null || objectList.isEmpty()) { 
}catch(Exception e){ 
//print the exception 
} 

アプリは、

1

を試してみてください確認してくださいobjectListnullではありません。したがって、あなたはこれを行う必要があります。

if(objectList != null && !objectList.isEmpty()) { 
    // not empty 
} 
else { 
    // objectList is null or empty 
} 

乾杯を!

+0

質問からちょうど反転した 'if'ではないのですか? –

0

を探すこの1

if(objectList != null) { 
if(objectList.isEmpty()) 
{ 
//Log here is empty 
} 
} 
else 
{ 
// log here its null 
} 
+0

これは回避策ですが、良い解決策ではありません。 –

+0

質問は主にアプリの実行を維持することに重点を置いていました。そうすればそれができます。 – Simo

関連する問題