Class Overview
LinkedHashMap is an implementation of Map that guarantees iteration order.
 All optional operations are supported.
 
All elements are permitted as keys or values, including null.
 
Entries are kept in a doubly-linked list. The iteration order is, by default, the
 order in which keys were inserted. Reinserting an already-present key doesn't change the
 order. If the three argument constructor is used, and accessOrder is specified as
 true, the iteration will be in the order that entries were accessed.
 The access order is affected by put, get, and putAll operations,
 but not by operations on the collection views.
 
Note: the implementation of LinkedHashMap is not synchronized.
 If one thread of several threads accessing an instance modifies the map
 structurally, access to the map needs to be synchronized. For
 insertion-ordered instances a structural modification is an operation that
 removes or adds an entry. Access-ordered instances also are structurally
 modified by put, get, and putAll since these methods
 change the order of the entries. Changes in the value of an entry are not structural changes.
 
The Iterator created by calling the iterator method
 may throw a ConcurrentModificationException if the map is structurally
 changed while an iterator is used to iterate over the elements. Only the
 remove method that is provided by the iterator allows for removal of
 elements during iteration. It is not possible to guarantee that this
 mechanism works in all cases of unsynchronized concurrent modification. It
 should only be used for debugging purposes.
 
Summary
| Public Constructors | 
	 
    
        | 
            
            
            
            
            
            
         | 
        
        LinkedHashMap()
        
         Constructs a new empty LinkedHashMap instance. 
  
   | 
	 
    
        | 
            
            
            
            
            
            
         | 
        
        LinkedHashMap(int initialCapacity)
        
         Constructs a new LinkedHashMap instance with the specified
 capacity. 
  
   | 
	 
    
        | 
            
            
            
            
            
            
         | 
        
        LinkedHashMap(int initialCapacity, float loadFactor)
        
         Constructs a new LinkedHashMap instance with the specified
 capacity and load factor. 
  
   | 
	 
    
        | 
            
            
            
            
            
            
         | 
        
        LinkedHashMap(int initialCapacity, float loadFactor, boolean accessOrder)
        
         Constructs a new LinkedHashMap instance with the specified
 capacity, load factor and a flag specifying the ordering behavior. 
  
   | 
	 
    
        | 
            
            
            
            
            
            
         | 
        
        LinkedHashMap(Map<? extends K, ? extends V> map)
        
         Constructs a new LinkedHashMap instance containing the mappings
 from the specified map. 
  
   | 
| Public Methods | 
	 
    
        | 
            
            
            
            
            
            void
         | 
        
        clear()
        
         Removes all mappings from this hash map, leaving it empty. 
  
   | 
	 
    
        | 
            
            
            
            
            
            boolean
         | 
        
        containsValue(Object value)
        
         This override is done for LinkedHashMap performance: iteration is cheaper
 via LinkedHashMap nxt links. 
  
   | 
	 
    
        | 
            
            
            
            
            
            V
         | 
        
        get(Object key)
        
         Returns the value of the mapping with the specified key. 
  
   | 
| 
  [Expand]
   Inherited Methods  | 
   
From class java.util.HashMap
  
   
  
    
    
	 
    
        | 
            
            
            
            
            
            void
         | 
        
        clear()
        
         Removes all mappings from this hash map, leaving it empty. 
  
   |  
	 
    
        | 
            
            
            
            
            
            Object
         | 
        
        clone()
        
         Returns a shallow copy of this map. 
  
   |  
	 
    
        | 
            
            
            
            
            
            boolean
         | 
        
        containsKey(Object key)
        
         Returns whether this map contains the specified key. 
  
   |  
	 
    
        | 
            
            
            
            
            
            boolean
         | 
        
        containsValue(Object value)
        
         Returns whether this map contains the specified value. 
  
   |  
	 
    
        | 
            
            
            
            
            
            Set<Entry<K, V>>
         | 
        
        entrySet()
        
         Returns a set containing all of the mappings in this map. 
  
   |  
	 
    
        | 
            
            
            
            
            
            V
         | 
        
        get(Object key)
        
         Returns the value of the mapping with the specified key. 
  
   |  
	 
    
        | 
            
            
            
            
            
            boolean
         | 
        
        isEmpty()
        
         Returns whether this map is empty. 
  
   |  
	 
    
        | 
            
            
            
            
            
            Set<K>
         | 
        
        keySet()
        
         Returns a set of the keys contained in this map. 
  
   |  
	 
    
        | 
            
            
            
            
            
            V
         | 
        
        put(K key, V value)
        
         Maps the specified key to the specified value. 
  
   |  
	 
    
        | 
            
            
            
            
            
            void
         | 
        
        putAll(Map<? extends K, ? extends V> map)
        
         Copies all the mappings in the specified map to this map. 
  
   |  
	 
    
        | 
            
            
            
            
            
            V
         | 
        
        remove(Object key)
        
         Removes the mapping with the specified key from this map. 
  
   |  
	 
    
        | 
            
            
            
            
            
            int
         | 
        
        size()
        
         Returns the number of elements in this map. 
  
   |  
	 
    
        | 
            
            
            
            
            
            Collection<V>
         | 
        
        values()
        
         Returns a collection of the values contained in this map. 
  
   |  
 
   
 
 | 
   
From class java.util.AbstractMap
  
   
  
    
    
	 
    
        | 
            
            
            
            
            
            void
         | 
        
        clear()
        
        Removes all elements from this  Map, leaving it empty.
  This implementation calls entrySet().clear().  
  
   |  
	 
    
        | 
            
            
            
            
            
            Object
         | 
        
        clone()
        
         Creates and returns a copy of this Object. 
  
   |  
	 
    
        | 
            
            
            
            
            
            boolean
         | 
        
        containsKey(Object key)
        
        Returns whether this  Map contains the specified key.
  This implementation iterates its key set, looking for a key that
 key equals.  
  
   |  
	 
    
        | 
            
            
            
            
            
            boolean
         | 
        
        containsValue(Object value)
        
        Returns whether this  Map contains the specified value.
  This implementation iterates its entry set, looking for an entry with
 a value that value equals.  
  
   |  
	 
    
        | 
            abstract
            
            
            
            
            Set<Entry<K, V>>
         | 
        
        entrySet()
        
         Returns a Set containing all of the mappings in this Map. 
  
   |  
	 
    
        | 
            
            
            
            
            
            boolean
         | 
        
        equals(Object object)
        
        Compares this instance with the specified object and indicates if they
 are equal.
  This implementation first checks the structure of object.  
  
   |  
	 
    
        | 
            
            
            
            
            
            V
         | 
        
        get(Object key)
        
        Returns the value of the mapping with the specified key.
  This implementation iterates its entry set, looking for an entry with
 a key that key equals.  
  
   |  
	 
    
        | 
            
            
            
            
            
            int
         | 
        
        hashCode()
        
        Returns an integer hash code for this object.
  This implementation iterates its entry set, summing the hashcodes of
 its entries.  
  
   |  
	 
    
        | 
            
            
            
            
            
            boolean
         | 
        
        isEmpty()
        
        Returns whether this map is empty.
  This implementation compares size() to 0.  
  
   |  
	 
    
        | 
            
            
            
            
            
            Set<K>
         | 
        
        keySet()
        
        Returns a set of the keys contained in this  Map.
  This implementation returns a view that calls through this to map.  
  
   |  
	 
    
        | 
            
            
            
            
            
            V
         | 
        
        put(K key, V value)
        
        Maps the specified key to the specified value.
  This base implementation throws UnsupportedOperationException.  
  
   |  
	 
    
        | 
            
            
            
            
            
            void
         | 
        
        putAll(Map<? extends K, ? extends V> map)
        
        Copies every mapping in the specified  Map to this  Map.
  This implementation iterates through map's entry set, calling
 put() for each.  
  
   |  
	 
    
        | 
            
            
            
            
            
            V
         | 
        
        remove(Object key)
        
        Removes a mapping with the specified key from this  Map.
  This implementation iterates its entry set, removing the entry with
 a key that key equals.  
  
   |  
	 
    
        | 
            
            
            
            
            
            int
         | 
        
        size()
        
        Returns the number of mappings in this  Map.
  This implementation returns its entry set's size.  
  
   |  
	 
    
        | 
            
            
            
            
            
            String
         | 
        
        toString()
        
        Returns a string containing a concise, human-readable description of this
 object.
  This implementation composes a string by iterating its entry set.  
  
   |  
	 
    
        | 
            
            
            
            
            
            Collection<V>
         | 
        
        values()
        
        Returns a  Collection of the values contained in this  Map.
  This implementation returns a view that calls through this to map.  
  
   |  
 
   
 
 | 
   
From class java.lang.Object
  
   
  
    
    
	 
    
        | 
            
            
            
            
            
            Object
         | 
        
        clone()
        
         Creates and returns a copy of this Object. 
  
   |  
	 
    
        | 
            
            
            
            
            
            boolean
         | 
        
        equals(Object o)
        
         Compares this instance with the specified object and indicates if they
 are equal. 
  
   |  
	 
    
        | 
            
            
            
            
            
            void
         | 
        
        finalize()
        
         Called before the object's memory is reclaimed by the VM. 
  
   |  
	 
    
        | 
            
            
            final
            
            
            Class<? extends Object>
         | 
        
        getClass()
        
        Returns the unique instance of  Class that represents this
 object's class.  
  
   |  
	 
    
        | 
            
            
            
            
            
            int
         | 
        
        hashCode()
        
         Returns an integer hash code for this object. 
  
   |  
	 
    
        | 
            
            
            final
            
            
            void
         | 
        
        notify()
        
         Causes a thread which is waiting on this object's monitor (by means of
 calling one of the wait() methods) to be woken up. 
  
   |  
	 
    
        | 
            
            
            final
            
            
            void
         | 
        
        notifyAll()
        
         Causes all threads which are waiting on this object's monitor (by means
 of calling one of the wait() methods) to be woken up. 
  
   |  
	 
    
        | 
            
            
            
            
            
            String
         | 
        
        toString()
        
         Returns a string containing a concise, human-readable description of this
 object. 
  
   |  
	 
    
        | 
            
            
            final
            
            
            void
         | 
        
        wait()
        
         Causes the calling thread to wait until another thread calls the notify() or notifyAll() method of this object. 
  
   |  
	 
    
        | 
            
            
            final
            
            
            void
         | 
        
        wait(long millis, int nanos)
        
         Causes the calling thread to wait until another thread calls the notify() or notifyAll() method of this object or until the
 specified timeout expires. 
  
   |  
	 
    
        | 
            
            
            final
            
            
            void
         | 
        
        wait(long millis)
        
         Causes the calling thread to wait until another thread calls the notify() or notifyAll() method of this object or until the
 specified timeout expires. 
  
   |  
 
   
 
 | 
   
From interface java.util.Map
  
   
  
    
    
	 
    
        | 
            abstract
            
            
            
            
            void
         | 
        
        clear()
        
         Removes all elements from this Map, leaving it empty. 
  
   |  
	 
    
        | 
            abstract
            
            
            
            
            boolean
         | 
        
        containsKey(Object key)
        
         Returns whether this Map contains the specified key. 
  
   |  
	 
    
        | 
            abstract
            
            
            
            
            boolean
         | 
        
        containsValue(Object value)
        
         Returns whether this Map contains the specified value. 
  
   |  
	 
    
        | 
            abstract
            
            
            
            
            Set<Entry<K, V>>
         | 
        
        entrySet()
        
         Returns a Set containing all of the mappings in this Map. 
  
   |  
	 
    
        | 
            abstract
            
            
            
            
            boolean
         | 
        
        equals(Object object)
        
         Compares the argument to the receiver, and returns true if the
 specified object is a Map and both Maps contain the same mappings. 
  
   |  
	 
    
        | 
            abstract
            
            
            
            
            V
         | 
        
        get(Object key)
        
         Returns the value of the mapping with the specified key. 
  
   |  
	 
    
        | 
            abstract
            
            
            
            
            int
         | 
        
        hashCode()
        
         Returns an integer hash code for the receiver. 
  
   |  
	 
    
        | 
            abstract
            
            
            
            
            boolean
         | 
        
        isEmpty()
        
         Returns whether this map is empty. 
  
   |  
	 
    
        | 
            abstract
            
            
            
            
            Set<K>
         | 
        
        keySet()
        
         Returns a set of the keys contained in this Map. 
  
   |  
	 
    
        | 
            abstract
            
            
            
            
            V
         | 
        
        put(K key, V value)
        
         Maps the specified key to the specified value. 
  
   |  
	 
    
        | 
            abstract
            
            
            
            
            void
         | 
        
        putAll(Map<? extends K, ? extends V> map)
        
         Copies every mapping in the specified Map to this Map. 
  
   |  
	 
    
        | 
            abstract
            
            
            
            
            V
         | 
        
        remove(Object key)
        
         Removes a mapping with the specified key from this Map. 
  
   |  
	 
    
        | 
            abstract
            
            
            
            
            int
         | 
        
        size()
        
         Returns the number of mappings in this Map. 
  
   |  
	 
    
        | 
            abstract
            
            
            
            
            Collection<V>
         | 
        
        values()
        
         Returns a Collection of the values contained in this Map. 
  
   |  
 
   
 
 | 
 
Public Constructors
 
    
      
        public 
         
         
         
         
        
      
      LinkedHashMap
      ()
    
      
    
      
  Constructs a new empty LinkedHashMap instance.
 
     
 
 
    
      
        public 
         
         
         
         
        
      
      LinkedHashMap
      (int initialCapacity)
    
      
    
      
  Constructs a new LinkedHashMap instance with the specified
 capacity.
 
  
      Parameters
      
        
          | initialCapacity
           | the initial capacity of this map. | 
        
      
   
  
     
 
 
    
      
        public 
         
         
         
         
        
      
      LinkedHashMap
      (int initialCapacity, float loadFactor)
    
      
    
      
  Constructs a new LinkedHashMap instance with the specified
 capacity and load factor.
 
  
      Parameters
      
        
          | initialCapacity
           | the initial capacity of this map. | 
        
        
          | loadFactor
           | the initial load factor. | 
        
      
   
  
     
 
 
    
      
        public 
         
         
         
         
        
      
      LinkedHashMap
      (int initialCapacity, float loadFactor, boolean accessOrder)
    
      
    
      
  Constructs a new LinkedHashMap instance with the specified
 capacity, load factor and a flag specifying the ordering behavior.
 
  
      Parameters
      
        
          | initialCapacity
           | the initial capacity of this hash map. | 
        
        
          | loadFactor
           | the initial load factor. | 
        
        
          | accessOrder
           | true if the ordering should be done based on the last
            access (from least-recently accessed to most-recently
            accessed), and false if the ordering should be the
            order in which the entries were inserted. | 
        
      
   
  
     
 
 
    
      
        public 
         
         
         
         
        
      
      LinkedHashMap
      (Map<? extends K, ? extends V> map)
    
      
    
      
  Constructs a new LinkedHashMap instance containing the mappings
 from the specified map. The order of the elements is preserved.
 
  
     
 
Public Methods
 
    
      
        public 
         
         
         
         
        void
      
      clear
      ()
    
      
    
      
  Removes all mappings from this hash map, leaving it empty.
 
     
 
 
    
      
        public 
         
         
         
         
        boolean
      
      containsValue
      (Object value)
    
      
    
      
  This override is done for LinkedHashMap performance: iteration is cheaper
 via LinkedHashMap nxt links.
 
  
      Parameters
      
        
          | value
           | the value to search for. | 
        
      
   
  
      Returns
      true if this map contains the specified value,
         false otherwise.
   
     
 
 
    
      
        public 
         
         
         
         
        V
      
      get
      (Object key)
    
      
    
      
  Returns the value of the mapping with the specified key.
 
  
  
      Returns
      - the value of the mapping with the specified key, or 
null
         if no mapping for the specified key is found.
 
   
     
 
Protected Methods
 
    
      
        protected 
         
         
         
         
        boolean
      
      removeEldestEntry
      (Entry<K, V> eldest)