public class ArrayHashMap<K,V> extends Object implements Cloneable, Map<K,V>
HashMap implementation backed by an ArrayList to preserve order of values.
Implementation properties are:
Object.hashCode() for O(1) operations, see below.RecursiveLock.| Modifier and Type | Field and Description |
|---|---|
static int |
DEFAULT_INITIAL_CAPACITY
The default initial capacity: 16
|
static float |
DEFAULT_LOAD_FACTOR
Default load factor: 0.75f
|
| Constructor and Description |
|---|
ArrayHashMap(ArrayHashMap<K,V> o) |
ArrayHashMap(boolean supportNullValue,
int initialCapacity,
float loadFactor) |
| Modifier and Type | Method and Description |
|---|---|
void |
clear() |
Object |
clone()
Implementation uses
ArrayHashMap(ArrayHashMap). |
boolean |
containsKey(Object key) |
boolean |
containsValue(Object value) |
Set<Map.Entry<K,V>> |
entrySet() |
boolean |
equals(Object arrayHashMap) |
V |
get(Object key) |
ArrayList<V> |
getData()
Returns this object ordered ArrayList.
|
HashMap<K,V> |
getMap()
Returns this object hash map.
|
int |
hashCode() |
boolean |
isEmpty() |
Set<K> |
keySet() |
V |
put(K key,
V value) |
void |
putAll(Map<? extends K,? extends V> m) |
V |
remove(Object key) |
int |
size() |
boolean |
supportsNullValue()
Returns
true for default behavior, i.e. |
ArrayList<V> |
toArrayList() |
String |
toString() |
Collection<V> |
values() |
public static final float DEFAULT_LOAD_FACTOR
public static final int DEFAULT_INITIAL_CAPACITY
public ArrayHashMap(boolean supportNullValue,
int initialCapacity,
float loadFactor)
supportNullValue - Use true for default behavior, i.e. null can be a valid value.
Use false if null is not a valid value,
here put(Object, Object) and remove(Object) will be optimized.initialCapacity - use DEFAULT_INITIAL_CAPACITY for defaultloadFactor - use DEFAULT_LOAD_FACTOR for defaultsupportsNullValue()public ArrayHashMap(ArrayHashMap<K,V> o)
public final boolean supportsNullValue()
true for default behavior, i.e. null can be a valid value.
Returns false if null is not a valid value,
here put(Object, Object) and remove(Object) are optimized operations.
ArrayHashMap(boolean, int, float)public final Object clone()
ArrayHashMap(ArrayHashMap).public final ArrayList<V> getData()
toArrayList()public final ArrayList<V> toArrayList()
getData()public final HashMap<K,V> getMap()
public Collection<V> values()
See getData() and toArrayList().
public final V put(K key, V value) throws NullPointerException
This is an O(1) operation, in case the key does not exist, otherwise O(n).
put in interface Map<K,V>NullPointerException - if value is null but supportsNullValue() == falsepublic final V remove(Object key)
This is an O(1) operation, in case the key does not exist, otherwise O(n).
public final boolean containsKey(Object key)
containsKey in interface Map<K,V>public boolean containsValue(Object value)
containsValue in interface Map<K,V>public final boolean equals(Object arrayHashMap)
public final int hashCode()