Class DefaultKeyValue

  • All Implemented Interfaces:
    KeyValue

    public class DefaultKeyValue
    extends AbstractKeyValue
    A mutable KeyValue pair that does not implement Map.Entry.

    Note that a DefaultKeyValue instance may not contain itself as a key or value.

    Since:
    Commons Collections 3.0
    Version:
    $Revision: 646777 $ $Date: 2008-04-10 14:33:15 +0200 (Thu, 10 Apr 2008) $
    Author:
    James Strachan, Michael A. Smith, Neil O'Toole, Stephen Colebourne
    • Constructor Detail

      • DefaultKeyValue

        public DefaultKeyValue()
        Constructs a new pair with a null key and null value.
      • DefaultKeyValue

        public DefaultKeyValue​(Object key,
                               Object value)
        Constructs a new pair with the specified key and given value.
        Parameters:
        key - the key for the entry, may be null
        value - the value for the entry, may be null
      • DefaultKeyValue

        public DefaultKeyValue​(KeyValue pair)
        Constructs a new pair from the specified KeyValue.
        Parameters:
        pair - the pair to copy, must not be null
        Throws:
        NullPointerException - if the entry is null
      • DefaultKeyValue

        public DefaultKeyValue​(Map.Entry entry)
        Constructs a new pair from the specified Map.Entry.
        Parameters:
        entry - the entry to copy, must not be null
        Throws:
        NullPointerException - if the entry is null
    • Method Detail

      • setValue

        public Object setValue​(Object value)
        Sets the value.
        Parameters:
        value - the new value
        Returns:
        the old value of the value
        Throws:
        IllegalArgumentException - if value is this object
      • toMapEntry

        public Map.Entry toMapEntry()
        Returns a new Map.Entry object with key and value from this pair.
        Returns:
        a MapEntry instance
      • equals

        public boolean equals​(Object obj)
        Compares this Map.Entry with another Map.Entry.

        Returns true if the compared object is also a DefaultKeyValue, and its key and value are equal to this object's key and value.

        Overrides:
        equals in class Object
        Parameters:
        obj - the object to compare to
        Returns:
        true if equal key and value
      • hashCode

        public int hashCode()
        Gets a hashCode compatible with the equals method.

        Implemented per API documentation of Map.Entry.hashCode(), however subclasses may override this.

        Overrides:
        hashCode in class Object
        Returns:
        a suitable hash code