java - 如何根据值在android中选择json对象

标签 java android json rest

我有以下代码。

{
    "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");

最佳答案

假设您的 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')]

关于java - 如何根据值在android中选择json对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25296697/

相关文章:

java - Java中如何修改这个String?

android - 添加 'tools:replace="安卓 :value"' to <meta-data> element at AndroidManifest

json - 无法验证架构并正确使用 additionalProperties

python - 使用 python 格式化 Json 字符串

java - 将未经身份验证的用户上传的图像/gif 链接到同一用户的文本帖子

java - 面临使用 selenium webdriver 处理两个以上窗口的问题

android - Google Drive Android API - 在 App 文件夹中共享文件?

Android:如何与本地服务通信和交换对象?

java - 如何在java中添加 SOAP 头

java - 使位图大小和位置在每个设备上都相同