В настоящее время я загружаю текстовый файл, содержащий 100 000 строк, в SortedMap с использованием буферизованного чтения. Должен ли я отказаться от этого подхода и вместо этого загрузить весь файл в память, а затем токенизировать по переводу строк в SortedMap? Обратите внимание, я должен проанализировать каждую строку, чтобы извлечь ключ и создать объект поддержки для каждого ключа, который я затем вставляю в SortedMap. Размер файла составляет менее 4 МБ, что соответствует ограничениям на размер файла в памяти Android. Мне интересно, стоит ли пытаться переключиться на подход, основанный на оперативной памяти, или полученное ускорение просто не стоит.
Кроме того, HashMap будет намного быстрее, чем SortedMap? Мне нужен только поиск по ключу, и я могу жить без отсортированных ключей, если это необходимо, но было бы неплохо иметь с собой. Если структура лучше, чем то, что я использую, дайте мне знать, и если у вас есть какие-либо советы по скорости Android, связанные с этой проблемой, пожалуйста, укажите их тоже.
- Рошлер