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 的操作就介绍到这里,希望对大家有所帮助。