我的JSON代码如下:
returnString = "";
JSONArray jArray = new JSONArray(result);
for(int i=0;i<jArray.length();i++){
JSONObject json_data = jArray.getJSONObject(i);
JSONObject c = json_data.getJSONObject("data");
Log.i("log_tag","statues: "+c.getString("statues"));
returnString = c.getString("statues"); }
现在我想查看我的 JSONArray
中的值。 statues 的值为 0 或 1。此外,我将在 if else 短语中使用它们。
我的意思是这样的:
if(value of statues = 0){
do something}
else{
do something else}
我该怎么做?
最佳答案
如果您只想要 JSONArray 中的第一个状态值
要从 JSONArray 获取第一个值,只需在循环外和 if 语句之前执行:
JSONObject FirstArray = jArray.getJSONObject(0); // first Array in JSONArray
JSONObject data = FirstData.getString("data");
String FirstStatusValue = data.getString("Status");
然后将 FirstStatusValue
解析为 int 并在 if 中使用它。
我希望我理解你的问题,如果我没有理解,请纠正我
如果您想要 JSONArray 中的所有状态值
在 for 循环之前声明一个字符串数组并将所有状态值添加到其中然后循环:
String[] StatusArray = new String[jArray.length()]; // will make the status array has the same length as the JSONArray
for(int i=0;i<jArray.length();i++){
JSONObject json_data = jArray.getJSONObject(i);
JSONObject c = json_data.getJSONObject("data");
Log.i("log_tag","statues: "+c.getString("statues"));
StatusArray[i] = c.getString("status");
}
然后 for if 语句添加 for 循环然后检查如下语句:
for (int i = 0; i < StatusArray.length(); i++)
{
if (StatusArray[i] == 0)
// do something
else
// do something
}
关于android - 如何获取 JSONArray 的第一个值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20003009/