>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의 멤버 값에 액세스

JSONArray를 탐색하는 것은 JSON 구문 분석을 처음 접하는 사람들에게는 어려울 수 있습니다. 중첩된 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"): " JSONObject의 id"(정수) 및 "loc"(문자열) 값.
  • ...은 다음 작업을 나타냅니다. 추출된 값으로 수행합니다.

이러한 기술을 결합하면 Java 애플리케이션에서 JSONArray 내의 데이터에 효율적으로 액세스하고 활용할 수 있습니다.

위 내용은 Java에서 중첩된 JSONArray의 값에 액세스하고 추출하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.