Быстрый способ сериализации HashMap - PullRequest
1 голос
/ 25 февраля 2012

Я ищу быстрый и простой способ сериализации HashMaps. Я знаю объект (Out | In) putStreams, но насколько я знаю, они довольно медленные. Я пытался использовать GSON, но мне не нравится указывать тип для десериализации (как обычно, кому не нравится стирание типа).

Причина, по которой я не использую XStream: у меня есть несколько огромных (250k Elements) int массивов, которые я тоже должен сериализовать. И я не хочу накладных расходов для каждого элемента.

Hashmaps короткие (100-200 элементов).

1 Ответ

3 голосов
/ 25 февраля 2012

Часто проблема заключается в сериализации ключей и значений. В зависимости от того, что у вас есть, вы можете написать это так

DataOutputStream dos = 
Map<K, V> map = 
dow.writeInt(map.size());
for(Entry<K, V> entry: map.entrySet()) {
    dos.writeXxxx(entry.getKey());
    dos.writeXxxx(entry.getValue());
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...