GSON – 序列化和反序列化 JSON 为集

GSON – 序列化和反序列化 JSON 为集

原文: https://howtodoinjava.com/gson/gson-serialize-deserialize-set/

了解如何在 Java 中使用 Google GSON 库反序列化或解析 JSON 为集(例如HashSet)。 另外,学习序列化集为 JSON

值得一提的是,仅当Set是根元素时,我们才会做出额外的努力。 Gson 作为成员(在根下)可以很好地处理这些集。

1.序列化集为 JSON

Java 程序使用Gson.toJson()方法将HashSet序列化为 JSON。

Set<String> userSet = new HashSet<>();
userSet.add("Alex");
userSet.add("Brian");
userSet.add("Charles");

Gson gson = new Gson(); 

String jsonString= gson.toJson(userSet);  

System.out.println(jsonString);

程序输出。

["Alex","Brian","Charles"]

2.反序列化 JSON 为集

Java 程序,使用Gson.fromJson()方法和TypeToken将 JSON 反序列化为HashSet

import java.lang.reflect.Type;
import java.util.HashSet;
import java.util.Set;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;

String jsonString = "['Alex','Brian','Charles','Alex']";

Gson gson = new Gson(); 

Type setType = new TypeToken<HashSet<String>>(){}.getType();

Set<String> userSet = gson.fromJson(jsonString, setType);  

System.out.println(userSet);

程序输出:

["Alex","Brian","Charles"]

向我提供有关在 Java 中解析和反序列化 json 为集的问题。

学习愉快!

参考文献:

GSON Github