Junior
HashMapте объекттерди сактоо кандайча жүргүзүлөт?
sobes.tech AI
AIден жооп
Объекттер " ачкыч-маани" жуптар түрүндө сакталат. HashMap массиви "кошулмалар" (buckets) колдонулат. Жупту кошуу учурунда:
- Ачкычтын хеш-коду
hashCode()аркылуу эсептелет. - Хеш-кодду колдонуп, массивдеги кошулманын индексин аныктайт.
- Бул кошулмага
Entryжупу (же жаңы Java версияларында аналог) коюлат, ал ачкычты, маанини жана хеш-кодду камтыйт. - Эгер кошулмада алгачкы объекттер болсо, алар байланып турган тизме же дарак түзөт (көп кагылышууларда).
Объектти ачкыч аркылуу алуу учурунда:
- Ачкычтын хеш-коду эсептелет.
- Кошулманын индексин аныктайт.
- Кошулманын ичинде,
equals()trueкайтарган жана хеш-коддор салыштырмалуу туура келген объект изделет.
Ачкычтар өзгөрүлбөс болушу керек жана туура иштелип чыккан hashCode() жана equals() методдору болушу керек.