Junior — Middle
HashMap автоматтык кеңейтүүсүз баштоо үчүн минималдуу элементтердин саны канча?
sobes.tech AI
AIден жооп
Javaда HashMap баштапкы сыйымдуулугу (capacity) жана жүктөө коэффициенти (load factor) бар, алар стандарттык түрдө 16 жана 0,75 болуп саналат. Автоматтык кеңейүү, элементтер саны capacity * load factorден ашканда болот.
Автоматтык кеңейүүнүн алдын алуу үчүн, баштапкыда керектүү элементтер санын сыйдыра алчу сыйымдуулукту белгилөө керек, ошондо чектен ашпайт.
HashMapти кеңейтип жүктөбөстөн n элемент менен баштоо үчүн, initialCapacity >= n / loadFactor болушу керек.
Мисал:
int expectedElements = 10;
float loadFactor = 0.75f;
int initialCapacity = (int) Math.ceil(expectedElements / loadFactor);
HashMap<String, String> map = new HashMap<>(initialCapacity, loadFactor);