将String转换为JsonArray

Die*_*wer 8 java android json

如何正确地将此String转换为jsonArray?

{
    "myArray": [
    {   "id": 1,
        "att1": 14.2,
        "att2": false },
    {   "id": 2,
        "att1": 13.2,
        "att2": false },
    {   "id": 3,
        "att1": 13,
        "att2": false }
  ]}
Run Code Online (Sandbox Code Playgroud)

一个JSONArray jArray = new JSONArray(STRING_FROM_ABOVE);在结果jArray.length = 1 它的我第一次使用JSON取得联系:)

Org*_*gan 10

试试这个 :

JSONObject jObject = new JSONObject(STRING_FROM_ABOVE);
JSONArray jArray = jObject.getJSONArray("myArray");
Run Code Online (Sandbox Code Playgroud)

"string_from_above"不是Json数组,它是一个Json对象,包含一个属性(myArray),它是一个Json数组;)

然后你可以这样做:

for (int i = 0; i < jArray.length(); i++) {
        JSONObject jObj = jArray.getJSONObject(i);
        System.out.println(i + " id : " + jObj.getInt("id"));
        System.out.println(i + " att1 : " + jObj.getDouble("att1"));
        System.out.println(i + " att2 : " + jObj.getBoolean("att2"));
}
Run Code Online (Sandbox Code Playgroud)