gpt4 book ai didi

java - Json:将对象添加到数组

转载 作者:行者123 更新时间:2023-11-30 03:40:54 25 4
gpt4 key购买 nike

我正在使用 javax.json 库在 Java 中使用 Json。我正在尝试在 JsonArray 中添加 JsonObject,例如:

[
{ "some_stuff": "stuff" },
{ "some_stuff": "stuff" }
]

我需要使用与示例中相同的键向该数组添加下一个对象,但我已卡住在array.add();

JsonObject jsonObject = Json.createObjectBuilder()
.add("some_stuff", "stuff")
.build();

JsonArray array = jsonReader.readArray();
array.add(jsonObject); // UnsupportedOperationException

最佳答案

JsonArray 是不可变的,因此您无法向其中添加对象(因此是异常(exception))。来自 docs :

JsonArray represents an immutable JSON array (an ordered sequence of zero or more values). It also provides an unmodifiable list view of the values in the array.

您需要使用JsonArrayBuilder对象。这里至少有一种方法可以做到这一点:

  1. 创建一个 JsonArrayBuilder 对象。 (请参阅文档链接了解具体操作方法)

  2. 添加 JsonArray 数组中的每个元素 =
    jsonReader.readArray();
    对象到 JsonArrayBuilderObject

  3. 添加您的 JsonObject

  4. JsonArrayBuilder 上调用 .build,将其转换为包含所有元素的 JsonArray

关于java - Json:将对象添加到数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26850110/

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