我在org.json
包下使用JSONArray。
我的第一个JSONArray就像:
[[ “249404”, “VPR249404”],[ “249403”, “VPR249403”],[ “249391”, “M249391”]]
和第二
[[ “249386”, “M249386”],[ “249385”, “M249385(I)”],[ “249384”, “I249384”]]
所以我想将新的JSONArray添加到我的第一个JSONArray中。
我正在研究Java和Android。我听说过google-gson库,但我不知道它是否可以帮助我,但我不想在我的Android应用程序中有任何其他依赖。
答案 0 :(得分: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;
}
我现在没有编译器进行测试,但你可以尝试一下,看看它是否有效(或者,至少,它会让你知道如何进行测试)。
修改强>
此版本可以连接多个数组(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;
}
答案 1 :(得分:-1)
尝试一下:
private JSONArray concatArray(JSONArray jsArr1, JSONArray jsArr2) {
return new JSONArray(jsArr1.toList().addAll(jsArr2.toList()));
}
答案 2 :(得分:-2)
使用...
jarray1.addAll(jarray2);