Java LinkedHashMap

‮ww‬w.theitroad.com

In Java, LinkedHashMap is a class that extends the HashMap class and provides a key-value based data structure that maintains the order of the keys. It is part of the java.util package and allows null values and null keys.

Here are some of the most commonly used methods in the LinkedHashMap class:

  1. void clear(): This method removes all the key-value mappings from the LinkedHashMap.

  2. boolean containsKey(Object key): This method returns true if the LinkedHashMap contains a mapping for the specified key, otherwise false.

  3. boolean containsValue(Object value): This method returns true if the LinkedHashMap contains one or more mappings to the specified value, otherwise false.

  4. Set<Map.Entry<K, V>> entrySet(): This method returns a Set view of the key-value mappings in the LinkedHashMap.

  5. V get(Object key): This method returns the value to which the specified key is mapped, or null if the key is not mapped to any value.

  6. boolean isEmpty(): This method returns true if the LinkedHashMap contains no key-value mappings, otherwise false.

  7. Set<K> keySet(): This method returns a Set view of the keys in the LinkedHashMap.

  8. V put(K key, V value): This method associates the specified value with the specified key in the LinkedHashMap. If the LinkedHashMap previously contained a mapping for the key, the old value is replaced with the new value and the old value is returned.

  9. void putAll(Map<? extends K, ? extends V> m): This method copies all of the mappings from the specified Map to this LinkedHashMap.

  10. V remove(Object key): This method removes the mapping for the specified key from the LinkedHashMap, if it is present.

  11. int size(): This method returns the number of key-value mappings in the LinkedHashMap.

  12. Collection<V> values(): This method returns a Collection view of the values in the LinkedHashMap.

In addition to the methods inherited from the HashMap class, the LinkedHashMap class also has two additional methods for manipulating the order of the keys:

  1. boolean removeEldestEntry(Map.Entry<K, V> eldest): This method is called by the put method to determine whether to remove the eldest entry. By default, this method returns false, indicating that the eldest entry should not be removed. Subclasses can override this method to provide custom eviction policies.

  2. boolean accessOrder(): This method returns true if the LinkedHashMap is in access-order mode, meaning that the order of the keys is based on their access order (i.e., the most recently accessed key is moved to the end of the list), rather than their insertion order. The default value is false.