首頁 >Java >java教程 >如何在 Java 中存取和提取巢狀 JSONArray 中的值?

如何在 Java 中存取和提取巢狀 JSONArray 中的值?

DDD
DDD原創
2024-11-26 06:23:10330瀏覽

How to Access and Extract Values from a Nested JSONArray in Java?

在 Java 中從 JSONArray 存取成員值

對於 JSON 解析新手來說,瀏覽 JSONArray 可能是一個挑戰。讓我們考慮一個場景,您需要從嵌套的 JSON 結構中檢索特定值。

假設您有一個具有以下結構的 JSON 檔案:

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

使用 Java 的 JSON解析功能,您可以使用以下程式碼存取“記錄”JSONArray:

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

迭代“記錄”JSONArray並提取“id”和“loc”值,您可以使用以下循環:

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

以下是每行程式碼對解決方案的貢獻:

  • recs. length():取得 JSONArray 的長度,表示其包含的記錄數。
  • recs.getJSONObject(i):檢索 JSONArray 中的第 i 個 JSONObject。
  • rec.getInt("id") 和 rec.getString("loc"):擷取「id」(整數)和「loc」(字串)值來自 JSONObject。
  • ... 表示您可以使用擷取的值執行的後續操作。

透過組合透過這些技術,您將能夠在 Java 應用程式中有效地存取和利用 JSONArray 中的資料。

以上是如何在 Java 中存取和提取巢狀 JSONArray 中的值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn