그래, Gson과 구문 분석하려는 JSON 조각이 있습니다. 문자열을 값으로, longs를 키로하고 싶습니다.중복 키가있는 Json에서 맵을 구성하는 방법
{ "completed_questions"[[ "문자열", 12345], ...]}
문제가되는 데이터 유형, 나는 모든 구문 분석 그러나 저을 제공하는 Map<String, Long>
을하려고 할 때 중복 된 String 키로 인해 오류가 발생했습니다.
나는 Gson이 그들을 바꿔 먹을 것을 알았을 것이라고 생각하면서 그것을 뒤집어 썼다. 그러나 내가 시도했을 때 Map<Long, String>
는 나의 Strings를 Longs로 해석 할 수 없다는 오류가 발생했다.
작동 시키려면 키와 값 유형을 사용하는 스왑 맵 클래스를 만들고 이렇게 바꾸십시오. public class SwapMap<K, V> implements Map<K, V>
그러나 put/get/remove와 같은 스왑 된 맵 작업을 변환하는 것은 작업하기가 매우 어려워 보입니다.
문자열이 고유하지 않더라도 Gson을 사용하여 구문 분석하는 가장 좋은 방법은 무엇입니까? (그러나 숫자는)
네, 그래서 캐스팅 목록을 사용하는 방법에 대한 걱정 :
그럼 난 그냥 그렇게처럼 내 GSON 작성자에 추가 :이는 디시리얼라이저의 관련 부분이다. indexOf(); 하지만이 옵션은 여전히 SwapMap 클래스보다 깔끔하게 보입니다. – MrEngineer13