>Java >java지도 시간 >Java의 중첩 JSONArray에서 \'id\' 및 \'loc\' 값을 추출하는 방법은 무엇입니까?

Java의 중첩 JSONArray에서 \'id\' 및 \'loc\' 값을 추출하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-27 05:13:11234검색

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"
      }
    ]
  }
}

목표는 "record" 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"의 문자열 값을 검색합니다. 키.

이렇게 검색된 값은 추가 처리 또는 작업에 사용될 수 있습니다.

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

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