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);
上述代码中,我们定义了一个User类,包含id和name两个私有属性,并实现了相应的getter和setter方法。接下来我们使用Gson库的fromJson方法将Json串转换为User对象。
public class Student { private String name; private int age; private Listcourses; // 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等。