首頁 >Java >java教程 >如何在Java中將JSON數組反序列化為列表的通用類型?

如何在Java中將JSON數組反序列化為列表的通用類型?

王林
王林轉載
2023-08-20 12:13:031229瀏覽

如何在Java中將JSON數組反序列化為列表的通用類型?

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]]

以上是如何在Java中將JSON數組反序列化為列表的通用類型?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除