Если я использую HashSet
с начальной емкостью 10 и коэффициентом загрузки 0,5
то каждые 5 элементов добавлены HashSet
будут увеличены или сначала HashSet
увеличивается на 10 элементов, а после - на 15 при 20 ат. емкость будет увеличена?
Коэффициент загрузки HashSet
Ответ 1
Коэффициент загрузки - это показатель того, насколько полный доступ к HashSet может быть достигнут до того, как его емкость будет автоматически увеличена. Когда количество записей в хэш-таблице превышает произведение коэффициента загрузки и текущей емкости, хеш-таблица повторно отображается (то есть внутренние структуры данных перестраиваются), так что хэш-таблица имеет примерно вдвое больше количества ковшей.
Ответ 2
Это второй случай. LoadFactor как HashSet, так и hashMap является относительным фактором.
Ответ 3
Начальная емкость по умолчанию для HashMap составляет 16, а коэффициент загрузки - 0,75f (т.е. 75% от текущего размера карты). Коэффициент загрузки показывает, на каком уровне емкость HashMap должна быть удвоена.
Например, произведение емкости и коэффициента загрузки как 16 * 0,75 = 12. Это означает, что после хранения 12-й пары ключ-значение в HashMap ее емкость становится 32.