【问题标题】:How to select json objects in android based on value如何根据值在android中选择json对象
【发布时间】:2014-08-13 21:43:54
【问题描述】:

我有以下代码。

{
    "id": 1,
    "name": "A green door",
    "price": 12.50,
    "tags": ["home", "green"]
}
{
    "id": 2,
    "name": "A blue door",
    "price": 10.50,
    "tags": ["home", "blue"]
}

我希望能够只选择具有特定“id”的对象。

 JSONObject json = new JSONObject(result);
    String name = json.opString("name");
    String price = json.optString("price");
    String tags = json.optString("tags");

【问题讨论】:

    标签: java android json rest


    【解决方案1】:

    假设您的 JSON 数据更符合

    {
        "objects": [
            {
                "id": 1,
                "name": "A green door",
                "price": 12.5,
                "tags": [
                    "home",
                    "green"
                ]
            },
            {
                "id": 2,
                "name": "A blue door",
                "price": 10.5,
                "tags": [
                    "home",
                    "blue"
                ]
            }
        ]
    }
    

    可以使用jsonPath来获取,例如只有id == 2

    $.objects[?(@.id=='2')]

    【讨论】:

    【解决方案2】:

    JSONObject 不包含任何查询对象的内容。您必须自己遍历所有元素并比较id

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-09-28
      • 2022-10-12
      • 2016-07-02
      • 2021-04-12
      • 1970-01-01
      • 2012-11-07
      • 1970-01-01
      • 2018-11-22
      相关资源
      最近更新 更多