将多个JSONArrays添加到JSONArray

时间:2018-04-18 11:13:52

标签: java

我正在搜索向JSONArray添加多个值的选项,并将其添加到另一个JSONArray中,而不创建多个变量。例如:

    JSONArray array1 = new JSONArray();
    JSONArray array2 = new JSONArray();
    array2.add("ex1");
    array2.add("ex2");
    array2.add("ex3");
    array1.add(array2);

成像:

    JSONArray array1 = new JSONArray();
    array1.add(new JSONArray().addAll(Arrays.asList("ex1","ex2","ex3")));
    array1.add(new JSONArray().addAll(Arrays.asList("ex4","ex5","ex6")));

有没有办法做到这一点?谢谢你们

1 个答案:

答案 0 :(得分:0)

可以使用gson完成:

<!-- https://mvnrepository.com/artifact/com.google.code.gson/gson -->
<dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.8.2</version>
</dependency>

这是一个正在运行的代码:

package com.test;

import java.util.Arrays;
import java.util.List;

import com.google.gson.JsonArray;

public class JArray {

    public static void main(String[] args) {
        JsonArray array1 = new JsonArray();

        array1.addAll(getJsonArrayFromList(Arrays.asList("ex1", "ex2", "ex3")));
        array1.addAll(getJsonArrayFromList(Arrays.asList("ex4", "ex5", "ex6")));

        System.out.println("array1 = " + array1);
    }

    public static JsonArray getJsonArrayFromList(List<String> list) {
        JsonArray array = new JsonArray();
        for (String s : list) {
            array.add(s);
        }
        return array;
    }

}

输出:

array1 = ["ex1","ex2","ex3","ex4","ex5","ex6"]