使用 Java 访问 JSONArray 中的项目成员

2022-01-31 00:00:00 json arrays java

我刚刚开始在 java 中使用 json.我不确定如何访问 JSONArray 中的字符串值.例如,我的 json 看起来像这样:

I'm just getting started with using json with java. I'm not sure how to access string values within a JSONArray. For instance, my json looks like this:

{
  "locations": {
    "record": [
      {
        "id": 8817,
        "loc": "NEW YORK CITY"
      },
      {
        "id": 2873,
        "loc": "UNITED STATES"
      },
      {
        "id": 1501
        "loc": "NEW YORK STATE"
      }
    ]
  }
}

我的代码:

JSONObject req = new JSONObject(join(loadStrings(data.json),""));
JSONObject locs = req.getJSONObject("locations");
JSONArray recs = locs.getJSONArray("record");

此时我可以访问记录"JSONArray,但不确定如何在 for 循环中获取id"和loc"值.抱歉,如果这个描述不太清楚,我对编程有点陌生.

I have access to the "record" JSONArray at this point, but am unsure as to how I'd get the "id" and "loc" values within a for loop. Sorry if this description isn't too clear, I'm a bit new to programming.

推荐答案

你试过使用 JSONArray.getJSONObject(int) 和 JSONArray.length() 来创建你的 for 循环:

Have you tried using JSONArray.getJSONObject(int), and JSONArray.length() to create your for-loop:

for (int i = 0; i < recs.length(); ++i) {
    JSONObject rec = recs.getJSONObject(i);
    int id = rec.getInt("id");
    String loc = rec.getString("loc");
    // ...
}

相关文章