Gson是一個 Java 庫,它可以把 JSON 字符串轉換為 Java 對象,以及把 Java 對象轉換為 JSON 字符串。使用 Gson 可以很方便地對 JSON 對象進行解析和操作,常用的功能之一就是將 JSON 字符串轉為 List。
使用 Gson 將 JSON 轉為 List 的代碼如下:
Gson gson = new Gson(); Type type = new TypeToken<List<YourObjectType>>(){}.getType(); List<YourObjectType> yourList = gson.fromJson(jsonString, type);
其中,YourObjectType 就是你要將 JSON 轉換成的 Java 對象類型。
解析過程比較簡單,首先需要創建一個 Gson 對象。然后定義一個 Type 類型,TypeToken 的作用就是為了方便創建這個 Type 類型。
最后,通過 fromJson() 方法將 JSON 字符串解析成 List。
完整的示例代碼如下:
import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; import java.lang.reflect.Type; import java.util.List; public class JsonToListExample { public static void main(String[] args) { String jsonString = "[{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}, " + "{\"name\":\"Jane\", \"age\":25, \"city\":\"San Francisco\"}]"; Gson gson = new Gson(); Type type = new TypeToken<List<Person>>(){}.getType(); // 解析成 List<Person> List<Person> personList = gson.fromJson(jsonString, type); for (Person person : personList) { System.out.println(person); } } } class Person { private String name; private int age; private String city; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getCity() { return city; } public void setCity(String city) { this.city = city; } @Override public String toString() { return "Person{" + "name='" + name + '\'' + ", age=" + age + ", city='" + city + '\'' + '}'; } }
上面的示例代碼將一個包含兩個 Person 對象的 JSON 字符串解析成了 List<Person>,然后輸出了每個 Person 的信息。
Gson 將 JSON 字符串轉為 List 的操作就介紹到這里,希望對大家有所幫助。
下一篇c 中處理 json