GSON을 사용하여 중첩 데이터 구조 디코딩
제공된 JSON 데이터는 객체 배열을 나타내는 반면, 디코딩 코드는 단일 객체를 예상합니다. ChannelSearchEnum 클래스. 이러한 불일치로 인해 "BEGIN_OBJECT가 예상되었지만 BEGIN_ARRAY였습니다" 예외가 발생합니다.
이 문제를 해결하려면 객체 배열을 처리하도록 디코딩 접근 방식을 수정해야 합니다. 적합한 방법 중 하나는 TypeToken 클래스를 fromJson 메서드와 함께 활용하는 것입니다.
Type collectionType = new TypeToken<Collection<ChannelSearchEnum>>(){}.getType(); Collection<ChannelSearchEnum> enums = gson.fromJson(json, collectionType);
이 코드는 ChannelSearchEnum 개체 컬렉션에 대한 유형 토큰을 생성한 다음 이를 사용하여 역직렬화 중에 원하는 유형을 지정합니다. 결과적으로 GSON은 JSON 배열을 올바르게 구문 분석하고 개별 ChannelSearchEnum 인스턴스가 포함된 컬렉션을 채웁니다.
위 내용은 GSON을 사용하여 JSON 배열을 객체 컬렉션으로 디코딩하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!