Junior — Middle
Can you explain how access to an element inside a HashMap structure is performed?
sobes.tech AI
Answer from AI
In Java, HashMap is implemented based on an array of buckets, each of which contains a linked list or a tree (since Java 8) of elements with the same hash code.
Access to an element occurs as follows:
- The hash code of the key is computed using
hashCode(). - The hash code is transformed into an index of the bucket array (usually through the operation
hash & (capacity - 1)). - In the selected bucket, the element with the key equal to the sought key is searched (comparison via
equals()). - If the element is found, its associated value is returned.
Example:
HashMap<String, Integer> map = new HashMap<>();
map.put("key", 42);
Integer value = map.get("key"); // hash is computed, bucket is selected, element is searched
Thus, accessing an element involves computing the hash, selecting the bucket, and searching by key within the bucket.