首页 > 解决方案 > 如何检查 JSON 数组的对象是否包含 Android Java 中具有特定名称的数字?

问题描述

我有这个 JSON 数组,我需要检查它的每个对象是否像第一个对象那样具有“雨”数。如何在 Java、Android 中实现它?我正在制作一个需要分析某天是否下雨的 android 应用程序。

 "daily": [
        {
            "dt": 1597730400,
            "sunrise": 1597705822,
            "sunset": 1597758442,
            "temp": {
                "day": 299.15,
                "min": 288.84,
                "max": 299.15,
                "night": 288.84,
                "eve": 298.91,
                "morn": 299.15
            },
            "feels_like": {
                "day": 291.47,
                "night": 287.34,
                "eve": 293.53,
                "morn": 291.47
            },
            "pressure": 997,
            "humidity": 27,
            "dew_point": 278.72,
            "wind_speed": 9.52,
            "wind_deg": 200,
            "weather": [
                {
                    "id": 500,
                    "main": "Rain",
                    "description": "light rain",
                    "icon": "10d"
                }
            ],
            "clouds": 100,
            "pop": 0.86,
            "rain": 1.03,
            "uvi": 4.86
        }

标签: javaandroidjson

解决方案


您想检查"rain"响应中是否返回了属性。

为此,请按照下列步骤操作:

  1. 为 JSON 数组中的对象创建一个类。
  2. 使用 Gson 或 Android 中的任何其他 JSON 库将获取的 JSON 转换为创建的类对象。
  3. 然后检查rain 是否不为null 以及rain 是否不等于0 以确认rain 属性存在于数组中的JSON 对象中。

推荐阅读