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

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

Mary-Kate Olsen
풀어 주다: 2024-11-27 05:13:11
원래의
271명이 탐색했습니다.

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿