Android 无法使用截取解析JSON对象

Android 无法使用截取解析JSON对象,android,json,android-volley,Android,Json,Android Volley,JSON文件: 我在“biller”数组中循环,以获取“billerCategory”:所在位置的所有对象 “电”。我正在尝试获取“paramName”值。但我只得到3个paramName值 答复: 代码: 试试看{ JSONArray-biller=response.getJSONArray(“biller”); Log.d(TAG,biller.toString()); //循环遍历biller数组并找到billerID 对于(int i=0;i

JSON文件:

我在“biller”数组中循环,以获取“billerCategory”:所在位置的所有对象 “电”。我正在尝试获取“paramName”值。但我只得到3个paramName值

答复:

代码:

试试看{
JSONArray-biller=response.getJSONArray(“biller”);
Log.d(TAG,biller.toString());
//循环遍历biller数组并找到billerID
对于(int i=0;i
发生异常。搜索“TORR00000SUR04”。此时,“paramInfo”恰好是一个JSONArray。

对此可能的解决方案是什么?在以下两种情况下都使用2个try-catch异常,其中一个将成功。JSONObject paramInfoObject=paraminput.getJSONObject(“paramInfo”);JSONArray paramInfoArray=paraminput.getJSONArray(“paramInfo”);这不是一个答案,但更像是一个评论。请参阅堆栈溢出如何回答部分。对不起,我的错误。谢谢你的提醒。当时的新用户不知道“添加评论”链接。只需填写大的空白框,正好是“答案”字段。无法复制,死链接。
try {
                JSONArray biller = response.getJSONArray("biller");

                Log.d(TAG, biller.toString());

                // Loop through biller Array and find billerID
                for (int i = 0; i < biller.length(); i++)
                {
                    JSONObject billerObj = (JSONObject) biller.get(i);
                    String category = billerObj.getString("billerCategory");


                    //Log.d(TAG, category);

                    if (category.equalsIgnoreCase("Electricity")){

                        JSONObject paraminput = billerObj.getJSONObject("billerInputParams");
                        JSONObject paramInfo = paraminput.getJSONObject("paramInfo");
                        String paramName = paramInfo.getString("paramName");


                        Log.d(TAG, paramName);

                    }
                }
            }