gson库提供了一个名为com.google.gson.reflect.typetoken的类来存储泛型类型,通过创建一个gson typetoken类并传递类类型。使用这个类型,gson可以知道在泛型类中传递的类。
语法public class typetoken<t> extends object
我们可以在下面的示例中将json数组反序列化为通用类型的列表
示例import java.lang.reflect.type;import java.util.*;import com.google.gson.*;import com.google.gson.reflect.*;public class jsonarraytolisttest { public static void main(string args[]) throws exception { string jsonstr = "[{\"name\":\"adithya\", \"course\":\"java\"}," + "{\"name\":\"ravi\", \"course\":\"python\"}]"; type listtype = new typetoken<arraylist<student>>() {}.gettype(); list<student> students = new gson().fromjson(jsonstr, listtype); system.out.println(students); }}// student classclass student { string name; string course; @override public string tostring() { return "student [name=" + name + ", course=" + course + "]"; }}
输出[student [name=adithya, course=java], student [name=ravi, course=python]]
以上就是如何在java中将json数组反序列化为列表的通用类型?的详细内容。