Gson. Desserializar inteiros como inteiros e não como duplos

Eu tenho json objeto com valores arbitrários dentro. E eu quero desserializá-lo em um mapa. Está tudo bem, exceto converter números inteiros em duplas. Consultar exemplo:

{"id":1, "inner_obj":{"key":"value","num":666,"map":{"key":"value"}}}

desserializa para isso (map.toString ()):

{id=1.0, inner_obj={key=value, num=666.0, map={key=value}}}

Existe alguma maneira fácil de desserializar "id" e "num" como números inteiros e não como duplas?

questionAnswers(6)

yourAnswerToTheQuestion