PCJ API
Version 1.2

bak.pcj.map
Class AbstractCharKeyLongMap

java.lang.Object
  extended bybak.pcj.map.AbstractCharKeyLongMap
All Implemented Interfaces:
CharKeyLongMap
Direct Known Subclasses:
CharKeyLongChainedHashMap, CharKeyLongOpenHashMap, MapToCharKeyLongMapAdapter

public abstract class AbstractCharKeyLongMap
extends Object
implements CharKeyLongMap

This class represents an abstract base for implementing maps from char values to long 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 AbstractCharKeyLongMap()
          Default constructor to be invoked by sub-classes.
 
Method Summary
 void clear()
          Clears this map.
 boolean containsKey(char key)
          Indicates whether this map contains a mapping from a specified key.
 boolean containsValue(long 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.
 long get(char 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(CharKeyLongMap map)
          Adds all mappings from a specified map to this map.
 long remove(char key)
          Removes the mapping from a specified key from this map.
 int size()
          Returns the size of this map.
 long tget(char 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.CharKeyLongMap
entries, keySet, lget, put, values
 

Constructor Detail

AbstractCharKeyLongMap

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

Method Detail

clear

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

Specified by:
clear in interface CharKeyLongMap

remove

public long remove(char key)
Description copied from interface: CharKeyLongMap
Removes the mapping from a specified key from this map.

Specified by:
remove in interface CharKeyLongMap
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(CharKeyLongMap map)
Description copied from interface: CharKeyLongMap
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 CharKeyLongMap
Parameters:
map - the map whose mappings to add to this map.

containsKey

public boolean containsKey(char key)
Description copied from interface: CharKeyLongMap
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 CharKeyLongMap
Parameters:
key - the key to test for.
Returns:
true if this map contains a mapping from the specified key; returns false otherwise.
See Also:
CharKeyLongMap.lget()

get

public long get(char key)
Description copied from interface: CharKeyLongMap
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 CharKeyLongMap
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, CharKeyLongMap.tget(char), CharKeyLongMap.lget()

containsValue

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

Specified by:
containsValue in interface CharKeyLongMap
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: CharKeyLongMap
Indicates whether this map is equal to some object.

Specified by:
equals in interface CharKeyLongMap

hashCode

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

Specified by:
hashCode in interface CharKeyLongMap

isEmpty

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

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

size

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

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

tget

public long tget(char key)
Description copied from interface: CharKeyLongMap
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 CharKeyLongMap
Parameters:
key - the key to map to a value.
Returns:
the value that the specified key maps to.
See Also:
CharKeyLongMap.get(char), CharKeyLongMap.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 CharKeyLongMap

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