如何將 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]]
廣告