gpt4 book ai didi

Java gson 如何将 List 序列化为 JSON 字符串中的对象列表?

转载 作者:行者123 更新时间:2023-11-30 06:57:45 27 4
gpt4 key购买 nike

我有一个像这样的类项目

class Item {
private String name;
private int age;
private boolean gender;
}

以及包含此项目的类 类列表项{ 私有(private) list 项目; }

使用gson生成JSON时,会返回这样的内容

[{"name": "a", "age": "a1", "gender": "male"}, {"name": "b", "age": "b1", "gender": "female"}, ...]

但我想自定义(不更改 POJO 类,因为我无法做到这一点)并在方法中

List<Item> listItems = new ArrayList<Item>();
listItems.add(new Item("a", "a1", "male");
listItems.add(new Item("b", "b1", "female");

Gson gson = new Gson();
JsonElement jsonElement = gson.toJsonTree(listItems);

然后 jsonElement 将在 JSON 字符串中生成这样的结构(对象列表和“name”:“object”)

{ 
"a": { "name": a, "age": "a1", "gender": "male" },
"b": { "name": b, "age": "b1", "gender": "female"}
}

当我序列化它时

String json = gson.toJson(jsonElement);

最佳答案

其实我可以改变

List<Item> to HashMap<String, Item>

然后 gson 将为我正确生成这个结构。

关于Java gson 如何将 List<Item> 序列化为 JSON 字符串中的对象列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41484791/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com