Существуют ли какие-либо библиотеки Java для карт и наборов, которые изменяют свою стратегию представления в зависимости от емкости? У меня есть приложение, в котором у нас много карт и наборов, но в большинстве случаев они маленькие, обычно 6 элементов или меньше.
Таким образом, мы смогли извлечь некоторые хорошие улучшения памяти, написав несколько специализированных карт и наборов, которые просто используют массивы для небольших размеров, а затем по умолчанию используют стандартные наборы Java и карты для большей емкости.
Однако, катание наших собственных специализированных версий набора и карт кажется глупым, если что-то уже есть в продаже. Я посмотрел на гуаву и коллекции Apache, и они, похоже, не предлагают ничего подобного. Похоже, Trove эффективнее использует память, чем коллекции JDK в целом, но неясно, попытается ли он минимизировать использование памяти следующим образом.