如何将 JSON 数组反序列化为 Java 中的列表泛型类型?\n
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 class
class 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]]
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP