zombie.core.Collections
Class ZomboidAbstractMap.SimpleImmutableEntry<K,V>

java.lang.Object
  extended by zombie.core.Collections.ZomboidAbstractMap.SimpleImmutableEntry<K,V>
All Implemented Interfaces:
java.io.Serializable, java.util.Map.Entry<K,V>
Enclosing class:
ZomboidAbstractMap<K,V>

public static class ZomboidAbstractMap.SimpleImmutableEntry<K,V>
extends java.lang.Object
implements java.util.Map.Entry<K,V>, java.io.Serializable

An Entry maintaining an immutable key and value. This class does not support method setValue. This class may be convenient in methods that return thread-safe snapshots of key-value mappings.

Since:
1.6
See Also:
Serialized Form

Constructor Summary
ZomboidAbstractMap.SimpleImmutableEntry(K key, V value)
          Creates an entry representing a mapping from the specified key to the specified value.
ZomboidAbstractMap.SimpleImmutableEntry(java.util.Map.Entry<? extends K,? extends V> entry)
          Creates an entry representing the same mapping as the specified entry.
 
Method Summary
 boolean equals(java.lang.Object o)
          Compares the specified object with this entry for equality.
 K getKey()
          Returns the key corresponding to this entry.
 V getValue()
          Returns the value corresponding to this entry.
 int hashCode()
          Returns the hash code value for this map entry.
 V setValue(V value)
          Replaces the value corresponding to this entry with the specified value (optional operation).
 java.lang.String toString()
          Returns a String representation of this map entry.
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ZomboidAbstractMap.SimpleImmutableEntry

public ZomboidAbstractMap.SimpleImmutableEntry(K key,
                                               V value)
Creates an entry representing a mapping from the specified key to the specified value.

Parameters:
key - the key represented by this entry
value - the value represented by this entry

ZomboidAbstractMap.SimpleImmutableEntry

public ZomboidAbstractMap.SimpleImmutableEntry(java.util.Map.Entry<? extends K,? extends V> entry)
Creates an entry representing the same mapping as the specified entry.

Parameters:
entry - the entry to copy
Method Detail

getKey

public K getKey()
Returns the key corresponding to this entry.

Specified by:
getKey in interface java.util.Map.Entry<K,V>
Returns:
the key corresponding to this entry

getValue

public V getValue()
Returns the value corresponding to this entry.

Specified by:
getValue in interface java.util.Map.Entry<K,V>
Returns:
the value corresponding to this entry

setValue

public V setValue(V value)
Replaces the value corresponding to this entry with the specified value (optional operation). This implementation simply throws UnsupportedOperationException, as this class implements an immutable map entry.

Specified by:
setValue in interface java.util.Map.Entry<K,V>
Parameters:
value - new value to be stored in this entry
Returns:
(Does not return)
Throws:
java.lang.UnsupportedOperationException - always

equals

public boolean equals(java.lang.Object o)
Compares the specified object with this entry for equality. Returns true if the given object is also a map entry and the two entries represent the same mapping. More formally, two entries e1 and e2 represent the same mapping if
   (e1.getKey()==null ?
    e2.getKey()==null :
    e1.getKey().equals(e2.getKey()))
   &&
   (e1.getValue()==null ?
    e2.getValue()==null :
    e1.getValue().equals(e2.getValue()))
This ensures that the equals method works properly across different implementations of the Map.Entry interface.

Specified by:
equals in interface java.util.Map.Entry<K,V>
Overrides:
equals in class java.lang.Object
Parameters:
o - object to be compared for equality with this map entry
Returns:
true if the specified object is equal to this map entry
See Also:
hashCode()

hashCode

public int hashCode()
Returns the hash code value for this map entry. The hash code of a map entry e is defined to be:
   (e.getKey()==null   ? 0 : e.getKey().hashCode()) ^
   (e.getValue()==null ? 0 : e.getValue().hashCode())
This ensures that e1.equals(e2) implies that e1.hashCode()==e2.hashCode() for any two Entries e1 and e2, as required by the general contract of Object.hashCode().

Specified by:
hashCode in interface java.util.Map.Entry<K,V>
Overrides:
hashCode in class java.lang.Object
Returns:
the hash code value for this map entry
See Also:
equals(java.lang.Object)

toString

public java.lang.String toString()
Returns a String representation of this map entry. This implementation returns the string representation of this entry's key followed by the equals character ("=") followed by the string representation of this entry's value.

Overrides:
toString in class java.lang.Object
Returns:
a String representation of this map entry