org.apache.commons.collections.map
Class IdentityMap
java.lang.Object
|
+--org.apache.commons.collections.map.AbstractHashedMap
|
+--org.apache.commons.collections.map.IdentityMap
- All Implemented Interfaces:
- Cloneable, IterableMap, Map, Serializable
- public class IdentityMap
- extends AbstractHashedMap
- implements Serializable, Cloneable
A Map
implementation that matches keys and values based
on ==
not equals()
.
This map will violate the detail of various Map and map view contracts.
As a general rule, don't compare this map to other maps.
- Since:
- Commons Collections 3.0
- Version:
- $Revision: 1.4 $ $Date: 2004/01/14 21:43:11 $
- Author:
- java util HashMap, Stephen Colebourne
- See Also:
- Serialized Form
Fields inherited from class org.apache.commons.collections.map.AbstractHashedMap |
data, DEFAULT_CAPACITY, DEFAULT_LOAD_FACTOR, DEFAULT_THRESHOLD, entrySet, GETKEY_INVALID, GETVALUE_INVALID, keySet, loadFactor, MAXIMUM_CAPACITY, modCount, NO_NEXT_ENTRY, NO_PREVIOUS_ENTRY, NULL, REMOVE_INVALID, SETVALUE_INVALID, size, threshold, values |
Constructor Summary |
IdentityMap()
Constructs a new empty map with default size and load factor. |
IdentityMap(int initialCapacity)
Constructs a new, empty map with the specified initial capacity. |
IdentityMap(int initialCapacity,
float loadFactor)
Constructs a new, empty map with the specified initial capacity and
load factor. |
IdentityMap(Map map)
Constructor copying elements from another map. |
Methods inherited from class org.apache.commons.collections.map.AbstractHashedMap |
addEntry, addMapping, calculateNewCapacity, calculateThreshold, checkCapacity, clear, containsKey, containsValue, convertKey, createEntrySetIterator, createKeySetIterator, createValuesIterator, destroyEntry, doReadObject, doWriteObject, ensureCapacity, entrySet, equals, get, getEntry, hashCode, hashIndex, init, isEmpty, keySet, mapIterator, put, putAll, remove, removeEntry, removeMapping, reuseEntry, size, toString, updateEntry, values |
IdentityMap
public IdentityMap()
- Constructs a new empty map with default size and load factor.
IdentityMap
public IdentityMap(int initialCapacity)
- Constructs a new, empty map with the specified initial capacity.
- Parameters:
initialCapacity
- the initial capacity- Throws:
IllegalArgumentException
- if the initial capacity is less than one
IdentityMap
public IdentityMap(int initialCapacity,
float loadFactor)
- Constructs a new, empty map with the specified initial capacity and
load factor.
- Parameters:
initialCapacity
- the initial capacityloadFactor
- the load factor- Throws:
IllegalArgumentException
- if the initial capacity is less than oneIllegalArgumentException
- if the load factor is less than zero
IdentityMap
public IdentityMap(Map map)
- Constructor copying elements from another map.
- Parameters:
map
- the map to copy- Throws:
NullPointerException
- if the map is null
hash
protected int hash(Object key)
- Gets the hash code for the key specified.
This implementation uses the identity hash code.
- Overrides:
hash
in class AbstractHashedMap
- Parameters:
key
- the key to get a hash code for- Returns:
- the hash code
isEqualKey
protected boolean isEqualKey(Object key1,
Object key2)
- Compares two keys for equals.
This implementation uses
==
.
- Overrides:
isEqualKey
in class AbstractHashedMap
- Parameters:
key1
- the first key to comparekey2
- the second key to compare- Returns:
- true if equal by identity
isEqualValue
protected boolean isEqualValue(Object value1,
Object value2)
- Compares two values for equals.
This implementation uses
==
.
- Overrides:
isEqualValue
in class AbstractHashedMap
- Parameters:
value1
- the first value to comparevalue2
- the second value to compare- Returns:
- true if equal by identity
createEntry
protected AbstractHashedMap.HashEntry createEntry(AbstractHashedMap.HashEntry next,
int hashCode,
Object key,
Object value)
- Creates an entry to store the data.
This implementation creates an IdentityEntry instance.
- Overrides:
createEntry
in class AbstractHashedMap
- Parameters:
next
- the next entry in sequencehashCode
- the hash code to usekey
- the key to storevalue
- the value to store- Returns:
- the newly created entry
clone
public Object clone()
- Clones the map without cloning the keys or values.
- Overrides:
clone
in class AbstractHashedMap
- Returns:
- a shallow clone
Copyright © 2001-2004 Apache Software Foundation. All Rights Reserved.