Sobes.tech
Junior — Middle

HashMap strukturunda elementə necə daxil olmaq olar, izah edə bilərsinizmi?

sobes.tech Süni İntellekt

AI-dan cavab

Java-da HashMap, eyni hash koduna malik olan elementləri ehtiva edən bağlı siyahı və ya ağac (Java 8-dən sonra) olan bucket array-ə əsaslanaraq həyata keçirilir.

Elementə giriş aşağıdakı kimi həyata keçirilir:

  1. Açarın hash kodu hashCode() metodu ilə hesablanır.
  2. Hash kodu, adətən hash & (capacity - 1) əməliyyatı ilə bucket array-inin indeksinə çevrilir.
  3. Seçilmiş bucket-də, axtarılan açarla bərabər olan element axtarılır (equals() ilə müqayisə edilir).
  4. Əgər element tapılırsa, ona bağlı dəyər geri qaytarılır.

Misal:

HashMap<String, Integer> map = new HashMap<>();
map.put("key", 42);
Integer value = map.get("key"); // hash hesablanır, bucket seçilir, element axtarılır

Beləliklə, elementə giriş hash-in hesablanması, bucket-in seçilməsi və bucket daxilində açarla axtarışdan ibarətdir.