使用Java中的Gson库将对象列表转换为JSON?

一个GSON 是可以用来转换库Java对象到JSON表示。它还可以用于将JSON字符串转换为等效的Java对象。要使用的主要类是Gson ,我们可以通过调用newGson()来创建它,并且GsonBuilder 类可以用来创建Gson 实例

我们可以通过首先创建一个Person 类并将一个Person对象列表转换为JSON来转换对象列表。

示例

import java.util.*;
import java.util.stream.*;
import com.google.gson.*;
public class JSONConverterTest {
   public static void main( String[] args ) {
      Gson gson = new GsonBuilder().setPrettyPrinting().create();
      List list = Stream.of(new Person("Raja", "Ramesh", 30, "9959984800"),
                            new Person("Jai", "Dev", 25, "7702144400"),
                            new Person("Adithya", "Sai", 21, "7013536200"),
                            new Person("Chaitanya", "Sai", 28, "9656444150"))
                            .collect(Collectors.toList());
      System.out.println("将人员对象列表转换为Json:");
      String json = gson.toJson(list); // converts to json
      System.out.println(json);
   }
}
// Person classclass Person {
   private String firstName, lastName, contact;
   private int age;
   public Person(String firstName, String lastName, int age, String contact) {
      this.firstName = firstName;
      this.lastName = lastName;
      this.age = age;
      this.contact = contact;
   }
   public String toString() {
      return "[" + firstName + " " + lastName + " " + age + " " +contact +"]";
   }
}

输出结果

将人员对象列表转换为Json:
[
{
   "firstName": "Raja",
   "lastName": "Ramesh",
   "contact": "9959984800",
   "age": 30
},
{
   "firstName": "Jai",
   "lastName": "Dev",
   "contact": "7702144400",
   "age": 25
},
{
   "firstName": "Adithya",
   "lastName": "Sai",
   "contact": "7013536200",
   "age": 21
},
{
   "firstName": "Chaitanya",
   "lastName": "Sai",
   "contact": "9656444150",
   "age": 28
}
]