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.
|
|
Object
|
clone()
Returns a new instance of the same class as this instance, whose slots
have been filled in with the values of the slots of this instance.
|
|
boolean
|
containsKey(Object key)
Returns whether this map contains the specified key.
|
|
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.
|
|
boolean
|
equals(Object object)
Compares the specified object to this instance, and returns true
if the specified object is a map and both maps contain the same mappings.
|
|
V
|
get(Object key)
Returns the value of the mapping with the specified key.
|
|
int
|
hashCode()
Returns the hash code for this object.
|
|
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 every mapping in the specified map to this map.
|
|
V
|
remove(Object key)
Removes a mapping with the specified key from this Map.
|
|
int
|
size()
Returns the number of elements in this map.
|
|
String
|
toString()
Returns the string representation of this map.
|
|
Collection<V>
|
values()
Returns a collection of the values contained in this 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()
Is called before the object's memory is being reclaimed by the VM.
|
|
final
Class<? extends Object>
|
getClass()
Returns the unique instance of Class which 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(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.
|
|
final
void
|
wait()
Causes the calling thread to wait until another thread calls the notify() or notifyAll() method of this object.
|
|
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)