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

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

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

1.序列化集为 JSON

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

  1. Set<String> userSet = new HashSet<>();
  2. userSet.add("Alex");
  3. userSet.add("Brian");
  4. userSet.add("Charles");
  5. Gson gson = new Gson();
  6. String jsonString= gson.toJson(userSet);
  7. System.out.println(jsonString);

程序输出。

  1. ["Alex","Brian","Charles"]

2.反序列化 JSON 为集

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

  1. import java.lang.reflect.Type;
  2. import java.util.HashSet;
  3. import java.util.Set;
  4. import com.google.gson.Gson;
  5. import com.google.gson.reflect.TypeToken;
  6. String jsonString = "['Alex','Brian','Charles','Alex']";
  7. Gson gson = new Gson();
  8. Type setType = new TypeToken<HashSet<String>>(){}.getType();
  9. Set<String> userSet = gson.fromJson(jsonString, setType);
  10. System.out.println(userSet);

程序输出:

  1. ["Alex","Brian","Charles"]

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

学习愉快!

参考文献:

GSON Github