web-dev-qa-db-ja.com

JsonのgetString()とoptString()の違い

JSONのgetString()optString()の違いは何ですか?

65
oferiko

ディエゴが言及しているように、ここに質問を投稿する前に documentation (このリンクは古くなっています- Wayback Machine! があります)を確認することをお勧めします。しかし今、あなたは持っています:

違いは、optStringは空の文字列("")指定したキーが存在しない場合。一方、getStringJSONExceptionをスローします。データが欠落しているためにエラーである場合はgetStringを使用し、データがあるかどうかわからない場合はoptStringを使用します。

編集:ドキュメントの詳細な説明:

キーに関連付けられたオプションの文字列を取得します。そのようなキーがない場合、空の文字列を返します。値が文字列ではなく、nullではない場合、文字列に変換されます。

116
Jeff

NullPointerExceptionを避けたい場合は、optString()を使用することをお勧めします

いつでもJSONからデータをフェッチしている場合、特定のKey値のnullデータがある場合があります。その場合、Null条件を実装する代わりに、この最適化されたメソッドoptString("<keyname>")

10
Trinadh Koya

public Java.lang.String optString(int index)インデックスに関連付けられたオプションの文字列値を取得します。そのインデックスに値がない場合、空の文字列を返します。値が文字列ではなく、nullではない場合、文字列に変換されます。パラメータ:index-インデックスは0〜length()-1の間である必要があります。戻り値:文字列値。

1
Cprk