当前位置: 首页 > 知识库问答 >
问题:

如何从JSON数组[Android][duplicate]获取特定对象

顾鸣
2023-03-14

我有一个这样的回应json,

[{
  "userId": 1,
  "id": 1,
  "title": "quidem molestiae enim"
},
{
  "userId": 2,
  "id": 2,
  "title": "sunt qui excepturi placeat culpa"
},
{
  "userId": 3,
  "id": 3,
  "title": "omnis laborum odio"
}]

我想显示userId=3的详细信息,但没有为我提供获取详细信息的endpoint。所以我想从这个endpoint得到细节。

应用程序内:

  • 我已经显示了仪表板的数据(使用recyclerview/list

共有2个答案

祖迪
2023-03-14

json的起始点必须始终是一个jsonObject而不是jsonArray

{
    "docs":[{
        "userId": 1,
        "id": 1,
        "title": "quidem molestiae enim"
      },
      {
        "userId": 2,
        "id": 2,
        "title": "sunt qui excepturi placeat culpa"
      },
      {
        "userId": 3,
        "id": 3,
        "title": "omnis laborum odio"
      }]
}
周龙光
2023-03-14
        JSONArray jsonArray = (JSONArray) JSON.parse(str);
        Map map = jsonArray.stream().map( obj -> {JSONObject jsonobject = (JSONObject) obj;return jsonobject;}).collect(Collectors.toMap(obj->obj.getIntValue("userId"),obj->obj.toJSONString()));
        System.out.println(map.get(3));
 类似资料: