所以我有这个JSON结构,可以作为HTTP响应获取。结构如下:
{
"field1": "value1","field2": {
"field2-2": [
{
"field2-2-1": "some value","field2-2-2": {
"key" : "some value"
}
}
]
}
}
我当然简化了,但是您明白了。现在,我使用Gson将其转换为HashMap:
HashMap<String,Object> resultMap = new Gson().fromJson(httpResult,type);
现在,要进入Java中的“ field2-2-2”,我需要这样做:
LinkedTreeMap someMap = (LinkedTreeMap) resultMap.get("field2");
ArrayList<LinkedTreeMap> someList = (ArrayList) someMap.get("field2-2");
LinkedTreeMap anotherMap = someList.get(0);
anotherMap.get("key");
我再次简化了它,但是有没有更好的方法来访问“深度”字段?还是出于可读性考虑,我可以以某种方式链接方法吗?我的意思是,如果这全部是ArrayLists,我可以这样做:
ArrayList<Arraylist<String>> sampleList = new ArrayList<>();
sampleList.get(0).get(0);