2015-12-08 44 views
-1

由于不同的API,我有不同的json数组字符串。例如Android JSON数组

阵列NO.1:

{ 
    "index0": [{ 
     "matchId": "55", 
     "battingTeam": "Australia", 
     "bowlingTeam": "England" 
    }] 
} 

阵之二:

{ 
    "onStrikePlayer": [{ 
     "name": "Josh Hazlewood", 
     "score": "4" 
    }] 
} 

所以我的问题是,我怎么能得到的对象名称(索引0)和(onStrikePlayer)从Android上面的数组字符串? 我必须通过这些index0onStrikePlayer来比较我通过哪个阵列。

+0

后的代码,你有问题。 –

回答

1

你的字符串是JSONObject的,所以你应该使用JSONObject.keys()把所有的键值。

Iterator iterator = YOURJSONOBJECT.keys(); 
while(iterator.hasNext()){ 
    String key = (String)iterator.next(); 
    if(key == YOUR_VALUE) { 
     // do something 
    } 
} 

在你的问题,你想拿到钥匙了,所以你应该做的一个只值:

JSONObject YOUROBJ = new JSONObject(YOURJSONSTRING); 
if(YOUROBJ.has("YOURVALUE")) { 
    // do something 
} else if (YOUROBJ.has("ANOTHERVALUE")){ 
    // do something else 
} 
+0

谢谢。有用 – Imran

0

使用此:

JSONObject jo = new JSONObject(jsonString); 
if(jo.has("index0")) { 
    // you have index 0 
} else if (jo.has("onStrikePlayer")){ 
    // you have on strike player 
}