PCJ API
Version 1.2

bak.pcj.map
Class AbstractIntKeyDoubleMap

java.lang.Object
  extended bybak.pcj.map.AbstractIntKeyDoubleMap
All Implemented Interfaces:
IntKeyDoubleMap
Direct Known Subclasses:
IntKeyDoubleChainedHashMap, IntKeyDoubleOpenHashMap, MapToIntKeyDoubleMapAdapter

public abstract class AbstractIntKeyDoubleMap
extends Object
implements IntKeyDoubleMap

This class represents an abstract base for implementing maps from int values to double values. All operations that can be implemented using iterators are implemented as such. In most cases, this is hardly an efficient solution, and at least some of those methods should be overridden by sub-classes.

Since:
1.0

Constructor Summary
protected AbstractIntKeyDoubleMap()
          Default constructor to be invoked by sub-classes.
 
Method Summary
 void clear()
          Clears this map.
 boolean containsKey(int key)
          Indicates whether this map contains a mapping from a specified key.
 boolean containsValue(double value)
          Indicates whether this map contains a mapping to a specified value.
 boolean equals(Object obj)
          Indicates whether this map is equal to some object.
 double get(int key)
          Maps a specified key to a value.
 int hashCode()
          Returns a hash code value for this map.
 boolean isEmpty()
          Indicates whether this map is empty.
 void putAll(IntKeyDoubleMap map)
          Adds all mappings from a specified map to this map.
 double remove(int key)
          Removes the mapping from a specified key from this map.
 int size()
          Returns the size of this map.
 double tget(int key)
          Maps a specified key to a value.
 String toString()
          Returns a string representation of this map.
 void trimToSize()
          Does nothing.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface bak.pcj.map.IntKeyDoubleMap
entries, keySet, lget, put, values
 

Constructor Detail

AbstractIntKeyDoubleMap

protected AbstractIntKeyDoubleMap()
Default constructor to be invoked by sub-classes.

Method Detail

clear

public void clear()
Description copied from interface: IntKeyDoubleMap
Clears this map.

Specified by:
clear in interface IntKeyDoubleMap

remove

public double remove(int key)
Description copied from interface: IntKeyDoubleMap
Removes the mapping from a specified key from this map.

Specified by:
remove in interface IntKeyDoubleMap
Parameters:
key - the key whose mapping to remove from this map.
Returns:
the old value if a mapping from the specified key already existed in this map; otherwise returns a default value as specified by the MapDefaults class.
See Also:
MapDefaults

putAll

public void putAll(IntKeyDoubleMap map)
Description copied from interface: IntKeyDoubleMap
Adds all mappings from a specified map to this map. Any existing mappings whose keys collide with a new mapping is overwritten by the new mapping.

Specified by:
putAll in interface IntKeyDoubleMap
Parameters:
map - the map whose mappings to add to this map.

containsKey

public boolean containsKey(int key)
Description copied from interface: IntKeyDoubleMap
Indicates whether this map contains a mapping from a specified key. If the key is contained in this map, a succeeding call to lget() will return the corresponding value.

Specified by:
containsKey in interface IntKeyDoubleMap
Parameters:
key - the key to test for.
Returns:
true if this map contains a mapping from the specified key; returns false otherwise.
See Also:
IntKeyDoubleMap.lget()

get

public double get(int key)
Description copied from interface: IntKeyDoubleMap
Maps a specified key to a value. Returns a default value as specified by the MapDefaults class if no mapping exists for the specified key.

Specified by:
get in interface IntKeyDoubleMap
Parameters:
key - the key to map to a value.
Returns:
the value that the specified key maps to, or a default value, if no such mapping exists.
See Also:
MapDefaults, IntKeyDoubleMap.tget(int), IntKeyDoubleMap.lget()

containsValue

public boolean containsValue(double value)
Description copied from interface: IntKeyDoubleMap
Indicates whether this map contains a mapping to a specified value.

Specified by:
containsValue in interface IntKeyDoubleMap
Parameters:
value - the value to test for.
Returns:
true if this map contains at least one mapping to the specified value; returns false otherwise.

equals

public boolean equals(Object obj)
Description copied from interface: IntKeyDoubleMap
Indicates whether this map is equal to some object.

Specified by:
equals in interface IntKeyDoubleMap

hashCode

public int hashCode()
Description copied from interface: IntKeyDoubleMap
Returns a hash code value for this map.

Specified by:
hashCode in interface IntKeyDoubleMap

isEmpty

public boolean isEmpty()
Description copied from interface: IntKeyDoubleMap
Indicates whether this map is empty.

Specified by:
isEmpty in interface IntKeyDoubleMap
Returns:
true if this map is empty; returns false otherwise.

size

public int size()
Description copied from interface: IntKeyDoubleMap
Returns the size of this map. The size is defined as the number of mappings from keys to values.

Specified by:
size in interface IntKeyDoubleMap
Returns:
the size of this map.

tget

public double tget(int key)
Description copied from interface: IntKeyDoubleMap
Maps a specified key to a value. This method should be used when the key is known to be in the map.

Specified by:
tget in interface IntKeyDoubleMap
Parameters:
key - the key to map to a value.
Returns:
the value that the specified key maps to.
See Also:
IntKeyDoubleMap.get(int), IntKeyDoubleMap.lget()

toString

public String toString()
Returns a string representation of this map.

Returns:
a string representation of this map.

trimToSize

public void trimToSize()
Does nothing. Sub-classes may provide an implementation to minimize memory usage, but this is not required since many implementations will always have minimal memory usage.

Specified by:
trimToSize in interface IntKeyDoubleMap

PCJ API
Version 1.2

Report a bug or request a feature.
Further information on the development and latest release of PCJ can be found at the project homepage.

Primitive Collections for Java is released under the GNU Lesser General Public License.
Copyright © 2002, 2003 Søren Bak. All Rights Reserved.

Hosted by SourceForge.net
SourceForge.net Logo