Android JSON数组可以';不能转换为JSON对象

Android JSON数组可以';不能转换为JSON对象,android,json,parsing,Android,Json,Parsing,我正在做json解析项目。错误显示为无法将json数组转换为json对象。下面是json视图 { "State Name": [ [ { "state_name": "New South Wales (NSW)" } ], [ { "state_name": "Western Australia (WA)" } ] ] } java代码是: try {

我正在做json解析项目。错误显示为无法将json数组转换为json对象。下面是json视图

{
"State Name": [
    [
        {
            "state_name": "New South Wales (NSW)"
        }
    ],
    [
        {
            "state_name": "Western Australia (WA)"
        }
    ]
]
}

java代码是:

try {
    JSONArray statesnames = json.getJSONArray(TAG_STATE_NAME);


                    Toast.makeText(getApplicationContext(), ""+statesnames.length(), 3000).show();


                    // looping through All Contacts
                    for(int i = 0; i < statesnames.length(); i++){


                        JSONObject c = statesnames.getJSONObject(i);

                        // Storing each json item in variable

                        String name = c.getString(TAG_NAME);
}
试试看{
JSONArray statesnames=json.getJSONArray(TAG_STATE_NAME);
Toast.makeText(getApplicationContext(),“”+statesnames.length(),3000.show();
//通过所有触点循环
对于(int i=0;i
如果您试图在一个响应中发送两个阵列,您可以这样做:

[                                         
   [{"state_name":"New South Wales (NSW)"}],
   [{"state_name":"Western Australia (WA)"}]
]
首先将您的JSONObject作为

JSONObject result= new JSONObject(json);
JSONArray arr= result.getJSONArray("State Name");
整个
JSON
字符串是一个
JSONArray

getJSONArray(0)
包含
JSONObjects
state\u name
如下所示:

for (int i = 0; i < arr.length(); i++) {
          JSONArray firstArry = arr.getJSONArray(i);

          for (int j = 0; j < firstArry.length(); j++) {
                 JSONObject secondarr= firstArry.getJSONObject(j);
                 System.out.println("state_name result: "+secondarr.getString("state_name"));
          }
}
for(int i=0;i
试试这个

{

    "State Name":[   --> JSONArray
        [            --> JSONArray
            {        --> JSONObject
                "state_name":"New South Wales (NSW)"
            }
        ],
        [
            {
                "state_name":"Western Australia (WA)"
            }
        ]
    ]

}
示例:

JSONObject json = new JSONObject(response);
JSONArray statesnames = json.getJSONArray("State Name");

for (int i1 = 0; i1 < statesnames.length(); i1++) {
          JSONArray jsonarray = statesnames.getJSONArray(i1);

          for (int i2 = 0; i2 < jsonarray.length(); i2++) {
                 JSONObject jsonobject = jsonarray.getJSONObject(i2);
                 System.out.println("state_name : "+jsonobject.getString("state_name"));
          }
}
JSONObject json=新的JSONObject(响应);
JSONArray statesnames=json.getJSONArray(“状态名”);
for(int i1=0;i1
请发布您的代码。是的,JSON数组不能转换为JSON对象。您的问题是什么?因为您没有显示代码,很难判断错误。但是我认为您已经声明了JsonObject而不是JsonArray。这里是错误