如何迭代json对象数组(gson)

Oye*_*eme 6 java json gson

我正在制作船舶防御游戏.
我在获取航点数组时遇到问题.地图包含JSON格式(使用GSON)

{
 "waypoints" : {
    "ship": { 
       "first_type": [[0,0],[5,7],[2,8],[4,4],[10,10],[12,0],[0,12],[12,8],[8,8]]                            
    },
    "boat": { 
       "first_type": [[0,0],[5,7],[2,8],[4,4],[10,10],[12,0],[0,12],[12,8],[8,8]]                            
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

我的代码:

    jse = new JsonParser().parse(in);
    in.close();

    map_json = jse.getAsJsonObject();
    JsonObject wayPoints = map_json.getAsJsonObject("waypoints").getAsJsonObject("ship");
Run Code Online (Sandbox Code Playgroud)

我写了这个,但它不起作用.

JsonArray asJsonArray = wayPoints.getAsJsonObject().getAsJsonArray();
Run Code Online (Sandbox Code Playgroud)

我怎样才能预测对象数组?

Per*_*ion 16

您可以first_type使用以下代码简化代码并检索数组.相同的代码也应该适用于second_type数组:

JsonArray types = map_json
    .getAsJsonObject("waypoints")
    .getAsJsonObject("ship")
    .getAsJsonArray("first_type";

for(final JsonElement type : types) {
    final JsonArray coords = type.getAsJsonArray():
}
Run Code Online (Sandbox Code Playgroud)