gpt4 book ai didi

java - JsonObject 添加属性 - map

转载 作者:行者123 更新时间:2023-11-30 06:19:59 28 4
gpt4 key购买 nike

我有一个名为 Test 的类,带有 String id场和一个HashMap map喜欢Map<String, String[]> , Map<String, ArrayList<String>> , 和 Map<String, HashMap> (此处第二个 HashMap 是一个 <String, Integer>)我有以下代码。

JsonObject jsonObject = new JsonObject();

jsonObject.addProperty("id", test.getId);

像这样,我要给这个加上Map。添加像 jsonObject.addProperty("map", String.valueOf(test.getMap()));没有正确完成工作,因为它在开头和结尾添加了“(逗号)。有人可以告诉我正确的方法是什么吗?

最佳答案

JsonObjectadd 方法来添加原始类型,但只有一个add 方法来添加复杂类型。此方法需要一个 JsonElement,因此您必须创建它。

JsonObject jsonObject = new JsonObject();
Gson gson = new Gson();
JsonElement jsonElement = gson.toJsonTree(test.getMap());
jsonObject.add("map", jsonElement);

我不知道你为什么要这样做。在上一个问题中,我向您展示了如何从 Test 类生成完整的 JSON。

你可以使用

gson.toJsonTree(test);

将 JSON 作为 JsonElement 获取,您可以将其转换为 JsonObject

关于java - JsonObject 添加属性 - map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22441134/

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