Глядя на источник Java 6, HashSet<E>
фактически реализуется с помощью HashMap<E,Object>
, используя экземпляр фиктивного объекта для каждой записи набора.
Я думаю, что отбирает 4 байта (на 32-битных машинах) для размера самой записи.
Но почему он все еще используется? Есть ли какая-то причина для его использования, кроме упрощения ведения кодов?