使用GSON从JsonArray对象获取一个特定字段作为JsonArray

使用GSON从JsonArray对象获取一个特定字段作为JsonArray,json,gson,Json,Gson,我有一个JSON结构,如下所示 { "data" : [ { "x" : "1", "y" : "2", "z" : {"a":"8","b":"9","c":"10"} }, { "x" : "3", "y" : "4", "z" : {"a":"6","b":"7","c":"11"} } ] } 我可以得到如

我有一个JSON结构,如下所示

{
   "data" : [ {
          "x" : "1",
          "y" : "2",
          "z" : {"a":"8","b":"9","c":"10"}
        },
        {
          "x" : "3",
          "y" : "4",
          "z" : {"a":"6","b":"7","c":"11"}
        }
    ]
}
我可以得到如下的JsonArray

JsonArray arrayData=jsonObj.getAsJsonArray("data");
但是,我需要一个特定字段的JsonArray(比如“z”)作为[{“a”:“8”,“b”:“9”,“c”:“10”},{“a”:“6”,“b”:“7”,“c”:“11”}]

差不多

JsonArray arrayZ=jsonObj.getAsJsonArray("data").getAsJsonArray("z");
这怎么可能实现呢?

你跳了一步。 JsonArray arrayData=jsonObj.getAsJsonArray(“数据”); 应该返回一个包含2个位置的数组,每个位置包含另一个包含3个位置的数组。 获取arrayData后,您应该遍历每个位置,并在其中再次获取“z”。

检查JsonArrayget(int i)的
get()
方法似乎返回JsonArray的第i个元素