gpt4 book ai didi

java - 如何在java中返回从json转换的数组?

转载 作者:行者123 更新时间:2023-12-01 09:48:45 24 4
gpt4 key购买 nike

以下代码工作正常(!),我想将其移动到自己的函数中,但我无法从 json 转换后的数组返回(最后一行)。我做错了什么?

    public Array jsonToArray(String json) {

JSONObject myjson = null;
try {
myjson = new JSONObject(json);
} catch (JSONException e) {
e.printStackTrace();
}
JSONArray the_json_array = null;
try {
the_json_array = myjson.getJSONArray("profiles");
} catch (JSONException e) {
e.printStackTrace();
}
int size = the_json_array.length();
ArrayList<JSONObject> arrays = new ArrayList<JSONObject>();
for (int i = 0; i < size; i++) {
JSONObject another_json_object = null;
try {
another_json_object = the_json_array.getJSONObject(i);
} catch (JSONException e) {
e.printStackTrace();
}

arrays.add(another_json_object);
}

JSONObject[] jsons = new JSONObject[arrays.size()];
arrays.toArray(jsons);

return Array jsons;
}

我认为问题在于类型,但我在 JAVA 中是全新的...我收到错误:“不是声明”。含义和解决办法是什么?

最佳答案

public JSONObject[] jsonToArray() 

以及

return jsons;

或者,为什么不返回 ArrayList<JSONObject> ,为什么要费心进行另一次转换呢?

不过,理想情况下,返回实际的 JSONArray 对象而不是 JSONObject 的 Java 数组更有意义。

比如

return myjson.getJSONArray("profiles");

或者,更进一步,实际上将您想要的 JSON 值解析到您自己的 Java 类中?

关于java - 如何在java中返回从json转换的数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37767516/

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