2016-12-10 3 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

Try:

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

Дело в том, что GSon JsonObject сохраняет свойство внутри Map<String, JsonElement> внутренне, и при вызове метода JsonObject.get(), он возвращает JsonElement и не фактическое значение.

Смежные вопросы