2016-12-10 14 views
-1
JsonObject json = new JsonObject(); 
json.addProperty("type", "hello"); 

System.out.println(json.get("type").toString().equals("hello")); 

上記の印刷文は、技術的には「真」になるはずですか? しかし、 "偽"を取得しています... javaの初心者です... "この初心者の質問で裸にしてください"。gson JsonObjectの値とJavaの文字列の比較

私に教えてください、コードに何が間違っていますか?

+1

この 'json.get(" type ")。toString()'を印刷しようとすると謎が解消されます –

+0

'toString'を使わず、' getAsString'を使います。 –

+0

'get'の戻り値の型は何ですか? –

答えて

1

試してみてください。

json.get("type").getAsString(); 

事は、内部Map<String, JsonElement>内部GSon JsonObject店財産ということです、そしてあなたがJsonObject.get()メソッドを呼び出すとき、それはJsonElementではなく実際の値を返します。