이 문의의 목표는 Gson을 사용하여 동적으로 유형이 지정된 ArrayList를 생성하는 것입니다. 여기서 데이터 유형은 런타임에 결정됩니다. Java 리플렉션을 사용합니다.
원하는 유형의 토큰을 지정하기 위해 TypeToken을 사용하는 초기 접근 방식은 배열목록. 그러나 런타임 오류가 발생했습니다.
이 문제를 해결하기 위해 개정된 솔루션에서는 Gson 2.8.0에 도입된 새로운 TypeToken 메서드 getParameterized(Type rawType, Type... typeArguments)를 활용합니다. 이 방법을 사용하면 매개변수화된 특정 유형에 대한 TypeToken을 생성할 수 있습니다.
업데이트된 코드:
private <T> Type setModelAndGetCorrespondingList2(Class<T> type) { return TypeToken.getParameterized(ArrayList.class, type).getType(); }
이 수정된 솔루션을 사용하면 다음 위치에서 원하는 ArrayList 유형에 대한 TypeToken을 동적으로 생성할 수 있습니다. Java 리플렉션을 사용하여 런타임에 getType() 메소드를 통해 해당 유형을 검색합니다.
위 내용은 리플렉션을 사용하여 Gson에서 형식화된 ArrayList를 동적으로 생성하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!