Почему gson конвертирует 1 в 1.0?

Пишу не большое CRUD приложение, которое будет позволять работать с некоторыми сущностями. Делаю его специально без всяких приколюх тип SQL, сервлетов и тд. Вся информация которая появляется в приложении, должна попадать в файл .json, для этого использую библиотеку gson. Объекты простые:

    class Skill{
long id;
String name;

toString, getters, setters и тд. 
id присваивается сам по типу AUTO_INCREMENT из SQL'я. 
}

Далее, после того как пользователь создал несколько объектов, я помещаю их в Set, а после того как программа завершается, полученный set я записываю в файл типа file.json, для дальнейшей десиарелизации:

 public static String skillToJson(Set<Skill> set){
        return GSON.toJson(set);
    }


    public static void writeInFile(Set<Skill> set) throws IOException {
        Writer writer = new FileWriter(SKILLS_JSON_PATH);
        writer.write(skillToJson(set));
        writer.close();
    }

Проблема в том, что поле id (со значением например 1), сериализуется как 1.0, из за чего испытываю трудности в обратной инициализации своего set. Подскажите пожалуйста юному программисту, можно ли с этим что то сделать, если можно то что и почему так?:) Спасибо!


Ответы (0 шт):