首頁 > Java > java教程 > 如何使用Java中的Gson函式庫對泛型類型進行序列化和反序列化?

如何使用Java中的Gson函式庫對泛型類型進行序列化和反序列化?

WBOY
發布: 2023-09-10 09:17:02
轉載
719 人瀏覽過

如何使用Java中的Gson函式庫對泛型類型進行序列化和反序列化?

##如果 Java 類別是泛型類型,並且我們將其與

Gson 函式庫一起使用,用於 JSON 序列化 反序列化。 Gson 函式庫提供了一個名為 com.google.gson.reflect.TypeToken 的類,透過建立 Gson TypeToken 類別並傳遞類別類型來儲存泛型類型。使用這種類型,Gson 能夠知道泛型類別中傳遞的類別。語法

public class TypeToken<T> extends java.lang.Object
登入後複製

範例

import java.lang.reflect.Type;
import java.util.*;
import com.google.gson.*;
import com.google.gson.reflect.*;
public class GenericTypesJSONTest {
   public static void main(String[] args) {
      Gson gson = new GsonBuilder().setPrettyPrinting().create();
      List<String> list = Arrays.asList("INDIA", "AUSTRALIA", "ENGLAND", "SOUTH AFRICA");
      String jsonStr = gson.toJson(list);
      System.out.println(jsonStr);
      Type listType = new TypeToken<List<String>>() {}.getType();
      list = gson.fromJson(jsonStr, listType);
      System.out.println(list);
   }
}
登入後複製

輸出

[
   "INDIA",
   "AUSTRALIA",
   "ENGLAND",
   "SOUTH AFRICA"
]
[INDIA, AUSTRALIA, ENGLAND, SOUTH AFRICA]
登入後複製

以上是如何使用Java中的Gson函式庫對泛型類型進行序列化和反序列化?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板