淘先锋技术网

首页 1 2 3 4 5 6 7

Json是一种轻量级的数据交换格式,常被用于前后端数据的传输。在开发中,我们经常需要将Json串转换为类对象。下面我们来介绍一下如何实现这一过程。


public class User {
    private int id;
    private String name;

    // getter和setter方法
}

// 将Json串转换为类对象
String json = "{\"id\":1,\"name\":\"Tom\"}";
User user = new Gson().fromJson(json, User.class);

json串转成类对象

上述代码中,我们定义了一个User类,包含id和name两个私有属性,并实现了相应的getter和setter方法。接下来我们使用Gson库的fromJson方法将Json串转换为User对象。


public class Student {
    private String name;
    private int age;
    private List courses;

    // getter和setter方法
}

// 将Json数组转换为类对象列表
String jsonArr = "[{\"name\":\"Tom\",\"age\":18,\"courses\":[\"Math\",\"English\"]},{\"name\":\"Jerry\",\"age\":20,\"courses\":[\"Java\",\"Python\",\"C\"]}]";
List students = new Gson().fromJson(jsonArr, new TypeToken>(){}.getType());

如果Json串是一个数组,我们需要使用Gson库的TypeToken来获取泛型类型,然后将Json数组转换为类对象的列表。

Json串转换为类对象需要注意以下几点:

  • Json串的属性名要与类对象的属性名一一对应,区分大小写。
  • 对于Json中不存在的属性,Gson库默认将值设为null,所以在类对象中定义属性时要考虑到这一点。
  • 对于不同类型的属性,Gson库有对应的转换方式,如Json中的数字可以转换为类对象中的int、double等。