如何解析Android中的以下数组?
[
5,
10,
15,
20
]
如您所见,没有定义数组的键,就像其他示例数组一样,例如:
{
"items": [
5,
10,
15
]
}
对于第二个数组,我可以轻松制作JSONObject
并使用:
JSONArray itemArray = jsonObject.getJSONArray("items")
但是,很明显,第一个数组没有关键字。那怎么会这样呢?甚至可以使用标准的Android库吗?
答案 0 :(得分:14)
你试过这个吗?
try {
// jsonString is a string variable that holds the JSON
JSONArray itemArray=new JSONArray(jsonString);
for (int i = 0; i < itemArray.length(); i++) {
int value=itemArray.getInt(i);
Log.e("json", i+"="+value);
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
答案 1 :(得分:0)
考虑Foreach版本:
try {
JSONArray itemArray=jsonObject.getJSONArray("items");
for (var item : itemArray) {
System.out.println(item);
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
答案 2 :(得分:0)
在这里,您可以直接访问json数组中的数据。
JSONArray itemArray = jsonObject.getJSONArray("items");
for(int i=0;i<itemarray.length;i++)
{
int i = Integer.ParseInt(itemarray.get(i));
Log.i("Value is:::",""+i);
}