2013-05-16 17 views
6

これはかなりシンプルで愚かなことかもしれませんが、しばらくして状況と戦って、何が起こっているのか分かりません。Gson、JsonElement、Javaでの文字列比較

私はGsonを使用していくつかのJSON要素を処理しています。私のコードのどこかで、JsonObjectのJsonElementsをStringとして取得し、別のStringと比較します。限り、私はそれらの両方が等しいですが、比較すると私は常に偽になることがわかります。ここにスニペットがあります。

if文の中には入りません。

arrにはインデックス0の要素があり、jsonobjには "coolname"という名前のフィールドがあり、println model_elemには "bla bla bla"(STUPID_STRINGと同じ)が得られます。私はequals()とcompareTo()== 0を試しました。

私はここで何が起こっているのか分かりません。 :-s。

ありがとうございます。

答えて

13

GSONでgetAsString()を使用する必要があると思います。 toString()は引用符を追加します!

+0

OMG GUYS !!私は問題を発見した! – Ole

+0

私もそこに行ってきました。 2つの等しい文字列を見つけた場合、余分な引用符に気づかないでください。 :) –

+0

あなたはまったく正しいです、それは問題でした...私は言い方がわかりません...それはJsonElement.toString()とJsonElement.getAsString()xDDで文書化されるべきです – Ole