ホームページ >Java >&#&チュートリアル >Java でネストされた JSONArray にアクセスして値を抽出する方法

Java でネストされた JSONArray にアクセスして値を抽出する方法

DDD
DDDオリジナル
2024-11-26 06:23:10291ブラウズ

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 の長さを取得し、レコード数を示します。 contains.
  • recs.getJSONObject(i): JSONArray 内の i 番目の JSONObject を取得します。
  • rec.getInt("id") および rec.getString("loc"): " JSONObject の id" (整数) と "loc" (文字列) の値。
  • ... は、抽出された値を使用して実行できる後続の操作を表します。

これらの手法を組み合わせることで、Java アプリケーションの JSONArray 内のデータに効率的にアクセスして利用できるようになります。

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

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