Sobes.tech
Junior — Middle

Como é que o número de cestos na tabela hash HashMap aumenta ao adicionar elementos?

sobes.tech IA

Resposta da IA

Em Java, o número de baldes (buckets) no HashMap aumenta ao adicionar elementos quando o número de elementos ultrapassa o limiar (threshold), que é igual a capacidade * fator de carga (por padrão, fator de carga = 0.75). Quando esse limiar é atingido, ocorre uma operação de expansão (resize), na qual o tamanho do array de baldes é duplicado e todos os elementos existentes são redistribuídos nos novos baldes considerando o novo tamanho.

Exemplo: se inicialmente a capacidade for 16, ao adicionar 12 elementos (16 * 0.75), ocorrerá uma expansão para 32 baldes.

Isso permite manter um tempo de acesso e inserção eficiente, reduzindo o número de colisões.