如何使用 API 引用 JSON 列表

How to reference a JSON List using an API

我会使用 getPressure 函数来引用列表中的压力场

{
    "cod": "200",
    "message": 0,
    "cnt": 40,
    "list": [
        {
            "dt": 1612558800,
            "main": {
                "temp": -3.29,
                "feels_like": -6.55,
                "temp_min": -3.29,
                "temp_max": -3.16,
                "pressure": 1021,




 public String getPressure() {
            JsonArray weatherArray = obj.getJsonArray("main");
            JsonObject weatherObject = weatherArray.getJsonObject(0);
            return weatherObject.getString("pressure");
        }

如何正确编写getPressure函数从列表中获取压力值?

试试这个:

    public String getPressure() {
       JsonArray weatherArray = obj.getJsonArray("list"); // list: []
       JsonObject weatherObject = weatherArray.getJsonObject(0); // first element of list
       JsonObject mainObject = weatherObject.getJsonObject("main"); // get main object
       return mainObject.getString("pressure"); // get Pressure of Main Object
    }

建议

  1. 如果您打算在长期项目中使用它,请考虑定义相应的 beans(映射到 json 结构)
  2. 使用Jackson(ObjectMapper)或Gson来serialize/deserializeto/fromjson

当前解决方案

        JsonObject input  = new Gson().fromJson(json, JsonObject.class);
        System.out.println(input.getAsJsonArray("list").get(0)
            .getAsJsonObject().getAsJsonObject("main").get("pressure").getAsInt());