首页 > 解决方案 > 将数组列表的内容添加到 JSON 数组:Java

问题描述

我有一个名为getFields的数组列表:

ArrayList getFields = new ArrayList(uniqueFields);

此数组列表会注销以下内容:

[{"warehouse":{"editableField":"false"}}, {"documentNo":{"editableField":"true"}}]

我需要将getFields转换为一个名为jsArray的 JSON 数组,所以我这样做了:

JSONArray jsArray = new JSONArray();
jsArray.put(getFields);

jsArray 注销以下内容:

[[{"warehouse":{"editableField":"false"}},{"documentNo":{"editableField":"true"}}]]

问题是,我不希望 jsArray 有一个嵌套数组(即我不希望它有双方括号)。我希望它是这样的:

[{"warehouse":{"editableField":"false"}},{"documentNo":{"editableField":"true"}}]

如何在没有双括号的情况下将 getFields 转换为 jsArray?已尝试转换为字符串,但后来我得到了反斜杠。任何帮助,将不胜感激。谢谢。

标签: javajsonarraylist

解决方案


getFields.forEach(jsArray::put);  // java 8+

您需要迭代getFields并一一放置元素。


// java 8 or below
for (int i = 0; i < getFields.size(); i++) {
    jsArray.put(getFields.get(i));
}

推荐阅读