我有一個 JSON 物件,其中包含多個相同型別的 JSON 物件。我應該如何用 GSON 決議它?
杰森:
{
"people":{
"1": {
"name": "A",
"age": 5
},
"2": {
"name": "B",
"age": 6
},
"3": {
"name": "C",
"age": 7
}
}
}
考慮我有這個類人
class Person{
private String name;
private int age;
}
我應該如何使用 GSON 將資料決議為陣列? List<Person> people;
uj5u.com熱心網友回復:
您需要一個代表您的 json 結構的類:
class Person {
private String name;
private int age;
}
class PersonMap {
private Map<String, Person> people;
}
@Test
public void test() {
String json =
"{\r\n"
"\"people\":{\r\n"
" \"1\": {\r\n"
" \"name\": \"A\",\r\n"
" \"age\": 5\r\n"
" },\r\n"
" \"2\": {\r\n"
" \"name\": \"B\",\r\n"
" \"age\": 6\r\n"
" },\r\n"
" \"3\": {\r\n"
" \"name\": \"C\",\r\n"
" \"age\": 7\r\n"
" }\r\n"
"}\r\n"
"}";
Gson gson = new GsonBuilder().setPrettyPrinting().create();
var persons = gson.fromJson(json, PersonMap.class).people.values();
for (Person person : persons) {
System.out.println(person.name " " person.age);
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/383601.html
