我已经创建了一种解析JSON对象并返回字符串数组的方法。

private String[] getAttributesfromJson(JSONObject attacheddataattributejson) {
    String returnjsonArray[] = null;
    JSONArray subcatarray = attacheddataattributejson.optJSONArray("subcatAttributes");
    if(subcatarray!=null){
        for(int i=0;i<subcatarray.length();i++)
        {
            returnjsonArray[i]=subcatarray.getJSONObject(i).optString("name");
        }
    }
    return returnjsonArray;
}


但是我的日食在returnjsonArray [i]上显示警告,该警告只能在此pos上为null。但是我也为subcatarray空检查。请帮忙。

最佳答案

您将returnjsonArray[]初始化为null,并尝试在未初始化的情况下对其进行访问。

Java使用null引用没有任何魔力。而且,数组不是在Java中动态分配的。如果需要,请使用List(也应对其进行初始化),然后返回此列表的.toArray()

07-27 23:16