连接JSONArrays

Vik*_*kas 23 java arrays android json concatenation

我在Package 下使用JSONArrayorg.json.

我的第一个JSONArray就像:

[[ "249404", "VPR249404"],[ "249403", "VPR249403"],[ "249391", "M249391"]]

第二

[[ "249386", "M249386"],[ "249385", "M249385(I)"],[ "249384", "I249384"]]

所以我想将新的JSONArray添加到我的第一个JSONArray中.

我正在研究Java和Android.我听说过google-gson库,但我不知道它是否可以帮助我,但我不想在我的Android应用程序中有任何其他依赖.

Cri*_*ian 48

我会尝试这样的事情:

private JSONArray concatArray(JSONArray arr1, JSONArray arr2)
        throws JSONException {
    JSONArray result = new JSONArray();
    for (int i = 0; i < arr1.length(); i++) {
        result.put(arr1.get(i));
    }
    for (int i = 0; i < arr2.length(); i++) {
        result.put(arr2.get(i));
    }
    return result;
}
Run Code Online (Sandbox Code Playgroud)

我现在没有编译器进行测试,但你可以尝试一下,看看它是否有效(或者,至少,它让你知道如何做).

编辑

这个版本可以连接多个数组(concatArray(arr1, arr2, arr3)):

private JSONArray concatArray(JSONArray... arrs)
        throws JSONException {
    JSONArray result = new JSONArray();
    for (JSONArray arr : arrs) {
        for (int i = 0; i < arr.length(); i++) {
            result.put(arr.get(i));
        }
    }
    return result;
}
Run Code Online (Sandbox Code Playgroud)