ホームページ >Java >&#&チュートリアル >Java でネストされた JSONArray から「id」と「loc」の値を抽出する方法

Java でネストされた JSONArray から「id」と「loc」の値を抽出する方法

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-27 05:13:11277ブラウズ

How to Extract

Java でネストされた JSONArray からの "id" および "loc" 値へのアクセス

Java で JSON データを解析するときに、よく発生する問題JSONObject 内の JSONArray などの入れ子構造。これらのネストされた構造内の特定の値にアクセスするのは、初心者にとっては少し難しいかもしれません。

問題:

次の JSON データを考えてみましょう:

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

目標は、「レコード」JSONArray を反復処理し、それぞれの「id」と「loc」の値にアクセスすることです。 Record.

解決策:

JSONArray 内の項目のメンバーにアクセスするには、getJSONObject(int) メソッドを使用できます。次のコードは、これを実現する方法を示しています。

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

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

for ループ内:

  • recs.length() は、「レコード」JSONArray 内の要素の数を提供します。
  • recs.getJSONObject(i) は、i 番目を表す JSONObject を返します。 Record.
  • rec.getInt("id") は "id" キーの整数値を取得します。
  • rec.getString("loc") は "loc" の文字列値を取得しますkey.

これらの取得された値は、その後の処理や操作に使用できます。

以上がJava でネストされた JSONArray から「id」と「loc」の値を抽出する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。