我使用GSON解析了JSON,而对象得到了我需要的元素:
JsonObject obj=str.getAsJsonObject();
JsonElement search=obj.get("value");
现在,GSON JsonElement'search'包含以下JSON:
[{"title":"John Lennon","snippet":"English musician, singer"}]
格式化:
[
{
"title": "John Lennon",
"snippet": "English musician, singer",
}
]
我需要提取以下两个值title和snippet。 怎么样?
答案 0 :(得分:2)
从外观上看,您可以使用getAsJsonArray()
JsonObject obj= str.getAsJsonObject();
JsonElement search= obj.get("value").getAsJsonArray().get(0)
search.get("title") //John Lennon
和
search.get("snippet") // English musician, singer
答案 1 :(得分:1)
使用JsonElement#getAsJsonArray()
:
JsonElement firstEntry = search.getAsJsonArray().get(0);
firstEntry.get("title") // => John Lennon
firstEntry.get("snippet") // => English musician, singer
如果不确定该元素实际上是一个数组,那么使用JsonElement#isJsonArray()
作为前提条件:
if(search.isJsonArray()) {
JsonElement firstEntry = search.getAsJsonArray().get(0);
firstEntry.get("title") // => John Lennon
firstEntry.get("snippet") // => English musician, singer
}