Недавно я участвовал в проекте Eclipse Collections, реализующем методы flatCollectByte, flatCollectChar, flatCollectInt, flatCollectShort, flatCollectDouble, flatCollectFloat, flatCollectLong и flatCollectBoolean .

EC уже имел collectByte, collectChar и другие примитивные collect реализации. Добавление примитивных flatCollect реализаций улучшило симметрию между collect и flatCollect API в дополнение к добавлению полезных функций.

Что такое FlatCollect?

Введение в FlatCollect от Дональда Рааба

Примеры FlatCollectInt

Вот пример использования flatCollectInt для сбора уникальных возрастов всех домашних животных, которые принадлежат списку людей, в IntSet.

Вот еще один пример использования FlatCollectInt для подсчета по возрасту питомца путем сбора данных в IntHashBag:

Вот как реализовано getPetAges:

Новые flatCollect методы будут доступны в следующем выпуске EC (10.3).

Для получения дополнительной информации о Коллекциях Eclipse ознакомьтесь с этой презентацией.