Class TObjectDoubleHashMapDecorator<V>

java.lang.Object
java.util.AbstractMap<V,Double>
gnu.trove.decorator.TObjectDoubleHashMapDecorator<V>
All Implemented Interfaces:
Externalizable, Serializable, Cloneable, Map<V,Double>

public class TObjectDoubleHashMapDecorator<V> extends AbstractMap<V,Double> implements Map<V,Double>, Externalizable, Cloneable
Wrapper class to make a TObjectDoubleHashMap conform to the java.util.Map API. This class simply decorates an underlying TObjectDoubleHashMap and translates the Object-based APIs into their Trove primitive analogs.

Note that wrapping and unwrapping primitive values is extremely inefficient. If possible, users of this class should override the appropriate methods in this class and use a table of canonical values.

Created: Mon Sep 23 22:07:40 PDT 2002

Author:
Eric D. Friedman
See Also:
  • Field Details

  • Constructor Details

    • TObjectDoubleHashMapDecorator

      public TObjectDoubleHashMapDecorator()
      FOR EXTERNALIZATION ONLY!!
    • TObjectDoubleHashMapDecorator

      public TObjectDoubleHashMapDecorator(TObjectDoubleHashMap<V> map)
      Creates a wrapper that decorates the specified primitive map.
  • Method Details

    • getMap

      public TObjectDoubleHashMap<V> getMap()
      Returns a reference to the map wrapped by this decorator.
    • clone

      Clones the underlying trove collection and returns the clone wrapped in a new decorator instance. This is a shallow clone except where primitives are concerned.
      Overrides:
      clone in class AbstractMap<V,Double>
      Returns:
      a copy of the receiver
    • put

      public Double put(V key, Double value)
      Inserts a key/value pair into the map.
      Specified by:
      put in interface Map<V,Double>
      Overrides:
      put in class AbstractMap<V,Double>
      Parameters:
      key - an Object value
      value - an Object value
      Returns:
      the previous value associated with key, or Integer(0) if none was found.
    • get

      public Double get(Object key)
      Retrieves the value for key
      Specified by:
      get in interface Map<V,Double>
      Overrides:
      get in class AbstractMap<V,Double>
      Parameters:
      key - an Object value
      Returns:
      the value of key or null if no such mapping exists.
    • clear

      public void clear()
      Empties the map.
      Specified by:
      clear in interface Map<V,Double>
      Overrides:
      clear in class AbstractMap<V,Double>
    • remove

      public Double remove(Object key)
      Deletes a key/value pair from the map.
      Specified by:
      remove in interface Map<V,Double>
      Overrides:
      remove in class AbstractMap<V,Double>
      Parameters:
      key - an Object value
      Returns:
      the removed value, or Integer(0) if it was not found in the map
    • entrySet

      public Set<Map.Entry<V,Double>> entrySet()
      Returns a Set view on the entries of the map.
      Specified by:
      entrySet in interface Map<V,Double>
      Specified by:
      entrySet in class AbstractMap<V,Double>
      Returns:
      a Set value
    • containsValue

      public boolean containsValue(Object val)
      Checks for the presence of val in the values of the map.
      Specified by:
      containsValue in interface Map<V,Double>
      Overrides:
      containsValue in class AbstractMap<V,Double>
      Parameters:
      val - an Object value
      Returns:
      a boolean value
    • containsKey

      public boolean containsKey(Object key)
      Checks for the present of key in the keys of the map.
      Specified by:
      containsKey in interface Map<V,Double>
      Overrides:
      containsKey in class AbstractMap<V,Double>
      Parameters:
      key - an Object value
      Returns:
      a boolean value
    • size

      public int size()
      Returns the number of entries in the map.
      Specified by:
      size in interface Map<V,Double>
      Overrides:
      size in class AbstractMap<V,Double>
      Returns:
      the map's size.
    • isEmpty

      public boolean isEmpty()
      Indicates whether map has any entries.
      Specified by:
      isEmpty in interface Map<V,Double>
      Overrides:
      isEmpty in class AbstractMap<V,Double>
      Returns:
      true if the map is empty
    • putAll

      public void putAll(Map<? extends V,? extends Double> map)
      Copies the key/value mappings in map into this map. Note that this will be a deep copy, as storage is by primitive value.
      Specified by:
      putAll in interface Map<V,Double>
      Overrides:
      putAll in class AbstractMap<V,Double>
      Parameters:
      map - a Map value
    • wrapKey

      protected final V wrapKey(Object o)
      Wraps a key
      Parameters:
      o - key in the underlying map
      Returns:
      an Object representation of the key
    • unwrapKey

      protected final V unwrapKey(Object key)
      Unwraps a key
      Parameters:
      key - wrapped key
      Returns:
      an unwrapped representation of the key
    • wrapValue

      protected Double wrapValue(double k)
      Wraps a value
      Parameters:
      k - value in the underlying map
      Returns:
      an Object representation of the value
    • unwrapValue

      protected double unwrapValue(Object value)
      Unwraps a value
      Parameters:
      value - wrapped value
      Returns:
      an unwrapped representation of the value
    • readExternal

      public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
      Specified by:
      readExternal in interface Externalizable
      Throws:
      IOException
      ClassNotFoundException
    • writeExternal

      public void writeExternal(ObjectOutput out) throws IOException
      Specified by:
      writeExternal in interface Externalizable
      Throws:
      IOException