Привет всем.
Такая задачка:
Имееются HashMap<String, Object> произвольной степени вложенности, которая содержит примитивные типы. Нужно ее сериализовать в json, потом десериализовать обратно и убедиться, что десериализованный HashMap соответствует исходному. Пробую десериализовать в HashMap таким образом:
Type type = new TypeToken<Map<String, Object>>(){}.getType();
HashMap<String, Object> myMap = gson.fromJson(json, type);
Проблема в том, что Gson десериализует все числа как double, если не указан конкретный тип, поэтому при прямом сравнении в лоб двух HashMap получаем, что они не равны, так как некоторые поля с одинаковым ключом имеют разный тип. Как грамотно решить такую проблему?