gpt4 book ai didi

android - 如何使 JSObject 成为数组?

转载 作者:行者123 更新时间:2023-11-29 21:55:32 26 4
gpt4 key购买 nike

我有很多链接可以从 Web 获取数据,因此我想使用循环来检索每个 URL 的数据,但是我在将 JSObject 制作为数组时遇到了麻烦。

JSONObject[] jsObjectallnewstype;
JSONArray[] jsonArrayallnewstype = null;

for(int i = 0; i < categories.length(); i++)
{
JSONObject c = categories.getJSONObject(i);
// Storing each json item in variable
String title = c.getString(TAG_TITLE);
String url = c.getString(TAG_URL);
jsObjectallnewstype[i] = JSONFunction.getnewstype(title, url); //java.lang.NullPointerException
jsonArrayallnewstype[i] = jsobjectallnewstype[i].getJSONArray(TAG_NEWLIST);
}

此行 jsObjectallnewstype[i] 得到空错误,尽管日志显示 JSONFunction.getnewstype 成功检索数据。我也担心第二行 jsonArrayallnewstype[i] 也可能导致同样的错误。

那么 JSObject 不能作为数组吗?如果是这样,还有什么选择??

最佳答案

要修复当前代码,您需要初始化数组。这就是您获得 NPE 的原因:

    JSONObject[] jsObjectallnewstype = new JSONObject[categories.length()];
JSONArray[] jsonArrayallnewstype = new JSONArray[categories.length()];

for(int i = 0; i < categories.length(); i++)
{
JSONObject c = categories.getJSONObject(i);
// Storing each json item in variable
String title = c.getString(TAG_TITLE);
String url = c.getString(TAG_URL);
jsObjectallnewstype[i] = JSONFunction.getnewstype(title, url); //java.lang.NullPointerException
jsonArrayallnewstype[i] = jsobjectallnewstype[i].getJSONArray(TAG_NEWLIST);
}

关于android - 如何使 JSObject 成为数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13338358/

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