我有以下JSONArray
:
[
{
"Lng":17.908817,
"name":"S1",
"id":1,
"sensor:":[
"Temperature",
"Wind"
],
"Lat":47.089492
},
{
"Lng":17.908458,
"name":"S2",
"id":2,
"sensor:":[
"Temperature",
"Wind",
"Humidity"
],
"Lat":47.089246
},
{
"Lng":17.908222,
"name":"S3",
"id":3,
"sensor:":[
"Wind"
],
"Lat":47.089662
}
]
我可以将其拆分为 JSONObject
,但如果我尝试拆分 Object
,它会返回 null
。
我的代码:
Object object = JSONValue.parse(result);
JSONArray array = (JSONArray)object;
for(int i = 0 ; i < array.size(); i++){
System.out.println(array.get(i));
JSONObject jsonObject = (JSONObject)array.get(i);
for(int j = 0 ; j < jsonObject.size(); j++){
System.out.println(jsonObject.get(j));
}
}
结果:
{"Lng":17.908817,"name":"S1","sensor:":["Temperature","Wind"],"id":1,"Lat":47.089492}
null
null
null
null
null
{"Lng":17.908458,"name":"S2","sensor:":["Temperature","Wind","Humidity"],"id":2,"Lat":47.089246}
null
null
null
null
null
{"Lng":17.908222,"name":"S3","sensor:":["Wind"],"id":3,"Lat":47.089662}
null
null
null
null
null
最佳答案
JSONObject
(JSON 对象)不可索引。元素是无序的。你想做什么
System.out.println(jsonObject.get(j));
没有意义。通过名称访问名称-值对。
关于java - Java中解码json返回null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25531489/