|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectit.unimi.dsi.fastutil.objects.AbstractObject2ObjectFunction<K,V>
it.unimi.dsi.fastutil.objects.AbstractObject2ObjectMap<K,V>
it.unimi.dsi.fastutil.objects.AbstractObject2ObjectSortedMap<K,V>
it.unimi.dsi.fastutil.objects.Object2ObjectAVLTreeMap<K,V>
public class Object2ObjectAVLTreeMap<K,V>
A type-specific AVL tree map with a fast, small-footprint implementation.
The iterators provided by the views of this class are type-specific bidirectional iterators.
Moreover, the iterator returned by iterator()
can be safely cast
to a type-specific list iterator.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class it.unimi.dsi.fastutil.objects.AbstractObject2ObjectSortedMap |
---|
AbstractObject2ObjectSortedMap.KeySetIterator<K,V>, AbstractObject2ObjectSortedMap.ValuesCollection, AbstractObject2ObjectSortedMap.ValuesIterator<K,V> |
Nested classes/interfaces inherited from class it.unimi.dsi.fastutil.objects.AbstractObject2ObjectMap |
---|
AbstractObject2ObjectMap.BasicEntry<K,V> |
Nested classes/interfaces inherited from interface it.unimi.dsi.fastutil.objects.Object2ObjectSortedMap |
---|
Object2ObjectSortedMap.FastSortedEntrySet<K,V> |
Nested classes/interfaces inherited from interface it.unimi.dsi.fastutil.objects.Object2ObjectMap |
---|
Object2ObjectMap.FastEntrySet<K,V> |
Field Summary | |
---|---|
protected Comparator<? super K> |
actualComparator
This map's actual comparator; it may differ from storedComparator because it is
always a type-specific comparator, so it could be derived from the former by wrapping. |
protected int |
count
Number of entries in this map. |
protected ObjectSortedSet<Object2ObjectMap.Entry<K,V>> |
entries
Cached set of entries. |
protected it.unimi.dsi.fastutil.objects.Object2ObjectAVLTreeMap.Entry<K,V> |
firstEntry
The first key in this map. |
protected ObjectSortedSet<K> |
keys
Cached set of keys. |
protected it.unimi.dsi.fastutil.objects.Object2ObjectAVLTreeMap.Entry<K,V> |
lastEntry
The last key in this map. |
protected boolean |
modified
The value of this variable remembers, after a put()
or a remove() , whether the domain of the map
has been modified. |
static long |
serialVersionUID
|
protected Comparator<? super K> |
storedComparator
This map's comparator, as provided in the constructor. |
protected it.unimi.dsi.fastutil.objects.Object2ObjectAVLTreeMap.Entry<K,V> |
tree
A reference to the root entry. |
protected ObjectCollection<V> |
values
Cached collection of values. |
Fields inherited from class it.unimi.dsi.fastutil.objects.AbstractObject2ObjectFunction |
---|
defRetValue |
Constructor Summary | |
---|---|
Object2ObjectAVLTreeMap()
Creates a new empty tree map. |
|
Object2ObjectAVLTreeMap(Comparator<? super K> c)
Creates a new empty tree map with the given comparator. |
|
Object2ObjectAVLTreeMap(K[] k,
V[] v)
Creates a new tree map using the elements of two parallel arrays. |
|
Object2ObjectAVLTreeMap(K[] k,
V[] v,
Comparator<? super K> c)
Creates a new tree map using the elements of two parallel arrays and the given comparator. |
|
Object2ObjectAVLTreeMap(Map<? extends K,? extends V> m)
Creates a new tree map copying a given map. |
|
Object2ObjectAVLTreeMap(Object2ObjectMap<? extends K,? extends V> m)
Creates a new tree map copying a given map. |
|
Object2ObjectAVLTreeMap(Object2ObjectSortedMap<K,V> m)
Creates a new tree map copying a given sorted map (and its Comparator ). |
|
Object2ObjectAVLTreeMap(SortedMap<K,V> m)
Creates a new tree map copying a given sorted map (and its Comparator ). |
Method Summary | |
---|---|
void |
clear()
Removes all associations from this function (optional operation). |
Object2ObjectAVLTreeMap<K,V> |
clone()
Returns a deep copy of this tree map. |
Comparator<? super K> |
comparator()
Returns the comparator associated with this sorted set, or null if it uses its keys' natural ordering. |
boolean |
containsKey(Object k)
Checks whether the given value is contained in AbstractObject2ObjectMap.keySet() . |
boolean |
containsValue(Object v)
Checks whether the given value is contained in AbstractObject2ObjectMap.values() . |
K |
firstKey()
|
V |
get(Object k)
Returns the value associated by this function to the specified key. |
Object2ObjectSortedMap<K,V> |
headMap(K to)
Returns a view of the portion of this sorted map whose keys are strictly less than toKey . |
boolean |
isEmpty()
|
ObjectSortedSet<K> |
keySet()
Returns a type-specific sorted set view of the keys contained in this map. |
K |
lastKey()
|
ObjectSortedSet<Object2ObjectMap.Entry<K,V>> |
object2ObjectEntrySet()
Returns a type-specific sorted-set view of the mappings contained in this map. |
V |
put(K k,
V v)
Associates the specified value with the specified key in this function (optional operation). |
V |
remove(Object k)
Removes this key and the associated value from this function if it is present (optional operation). |
int |
size()
Returns the intended number of keys in this function, or -1 if no such number exists. |
Object2ObjectSortedMap<K,V> |
subMap(K from,
K to)
Returns a view of the portion of this sorted map whose keys range from fromKey , inclusive, to toKey , exclusive. |
Object2ObjectSortedMap<K,V> |
tailMap(K from)
Returns a view of the portion of this sorted map whose keys are greater than or equal to fromKey . |
ObjectCollection<V> |
values()
Returns a type-specific collection view of the values contained in this map. |
Methods inherited from class it.unimi.dsi.fastutil.objects.AbstractObject2ObjectSortedMap |
---|
entrySet |
Methods inherited from class it.unimi.dsi.fastutil.objects.AbstractObject2ObjectMap |
---|
equals, hashCode, putAll, toString |
Methods inherited from class it.unimi.dsi.fastutil.objects.AbstractObject2ObjectFunction |
---|
defaultReturnValue, defaultReturnValue |
Methods inherited from class java.lang.Object |
---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface it.unimi.dsi.fastutil.objects.Object2ObjectFunction |
---|
defaultReturnValue, defaultReturnValue |
Methods inherited from interface java.util.Map |
---|
equals, hashCode, putAll |
Field Detail |
---|
protected transient it.unimi.dsi.fastutil.objects.Object2ObjectAVLTreeMap.Entry<K,V> tree
protected int count
protected transient it.unimi.dsi.fastutil.objects.Object2ObjectAVLTreeMap.Entry<K,V> firstEntry
protected transient it.unimi.dsi.fastutil.objects.Object2ObjectAVLTreeMap.Entry<K,V> lastEntry
protected transient volatile ObjectSortedSet<Object2ObjectMap.Entry<K,V>> entries
protected transient volatile ObjectSortedSet<K> keys
protected transient volatile ObjectCollection<V> values
protected transient boolean modified
put()
or a remove()
, whether the domain of the map
has been modified.
protected Comparator<? super K> storedComparator
protected transient Comparator<? super K> actualComparator
storedComparator
because it is
always a type-specific comparator, so it could be derived from the former by wrapping.
public static final long serialVersionUID
Constructor Detail |
---|
public Object2ObjectAVLTreeMap()
public Object2ObjectAVLTreeMap(Comparator<? super K> c)
c
- a (possibly type-specific) comparator.public Object2ObjectAVLTreeMap(Map<? extends K,? extends V> m)
m
- a Map
to be copied into the new tree map.public Object2ObjectAVLTreeMap(SortedMap<K,V> m)
Comparator
).
m
- a SortedMap
to be copied into the new tree map.public Object2ObjectAVLTreeMap(Object2ObjectMap<? extends K,? extends V> m)
m
- a type-specific map to be copied into the new tree map.public Object2ObjectAVLTreeMap(Object2ObjectSortedMap<K,V> m)
Comparator
).
m
- a type-specific sorted map to be copied into the new tree map.public Object2ObjectAVLTreeMap(K[] k, V[] v, Comparator<? super K> c)
k
- the array of keys of the new tree map.v
- the array of corresponding values in the new tree map.c
- a (possibly type-specific) comparator.
IllegalArgumentException
- if k
and v
have different lengths.public Object2ObjectAVLTreeMap(K[] k, V[] v)
k
- the array of keys of the new tree map.v
- the array of corresponding values in the new tree map.
IllegalArgumentException
- if k
and v
have different lengths.Method Detail |
---|
public V put(K k, V v)
Function
put
in interface Function<K,V>
put
in interface Map<K,V>
put
in class AbstractObject2ObjectFunction<K,V>
k
- the key.v
- the value.
null
if no value was present for the given key.Map.put(Object,Object)
public V remove(Object k)
Function
remove
in interface Function<K,V>
remove
in interface Map<K,V>
remove
in class AbstractObject2ObjectFunction<K,V>
null
if no value was present for the given key.Map.remove(Object)
public boolean containsValue(Object v)
AbstractObject2ObjectMap
AbstractObject2ObjectMap.values()
.
containsValue
in interface Map<K,V>
containsValue
in class AbstractObject2ObjectMap<K,V>
public void clear()
Function
clear
in interface Function<K,V>
clear
in interface Map<K,V>
clear
in class AbstractObject2ObjectFunction<K,V>
Map.clear()
public boolean containsKey(Object k)
AbstractObject2ObjectMap
AbstractObject2ObjectMap.keySet()
.
containsKey
in interface Function<K,V>
containsKey
in interface Map<K,V>
containsKey
in class AbstractObject2ObjectMap<K,V>
k
- the key.
key
.Map.containsKey(Object)
public int size()
Function
Most function implementations will have some knowledge of the intended number of keys in their domain. In some cases, however, this might not be possible.
size
in interface Function<K,V>
size
in interface Map<K,V>
public boolean isEmpty()
isEmpty
in interface Map<K,V>
isEmpty
in class AbstractObject2ObjectMap<K,V>
public V get(Object k)
Function
get
in interface Function<K,V>
get
in interface Map<K,V>
k
- the key.
null
if no value was present for the given key.Map.get(Object)
public K firstKey()
firstKey
in interface SortedMap<K,V>
public K lastKey()
lastKey
in interface SortedMap<K,V>
public ObjectSortedSet<Object2ObjectMap.Entry<K,V>> object2ObjectEntrySet()
Object2ObjectSortedMap
object2ObjectEntrySet
in interface Object2ObjectMap<K,V>
object2ObjectEntrySet
in interface Object2ObjectSortedMap<K,V>
Object2ObjectSortedMap.entrySet()
public ObjectSortedSet<K> keySet()
In addition to the semantics of Map.keySet()
, you can
safely cast the set returned by this call to a type-specific sorted
set interface.
keySet
in interface Object2ObjectMap<K,V>
keySet
in interface Object2ObjectSortedMap<K,V>
keySet
in interface Map<K,V>
keySet
in interface SortedMap<K,V>
keySet
in class AbstractObject2ObjectSortedMap<K,V>
Map.keySet()
public ObjectCollection<V> values()
In addition to the semantics of Map.values()
, you can
safely cast the collection returned by this call to a type-specific collection
interface.
values
in interface Object2ObjectMap<K,V>
values
in interface Object2ObjectSortedMap<K,V>
values
in interface Map<K,V>
values
in interface SortedMap<K,V>
values
in class AbstractObject2ObjectSortedMap<K,V>
Map.values()
public Comparator<? super K> comparator()
Object2ObjectSortedMap
Note that this specification strengthens the one given in SortedMap.comparator()
.
comparator
in interface Object2ObjectSortedMap<K,V>
comparator
in interface SortedMap<K,V>
SortedMap.comparator()
public Object2ObjectSortedMap<K,V> headMap(K to)
Object2ObjectSortedMap
toKey
.
Note that this specification strengthens the one given in SortedMap.headMap(Object)
.
headMap
in interface Object2ObjectSortedMap<K,V>
headMap
in interface SortedMap<K,V>
SortedMap.headMap(Object)
public Object2ObjectSortedMap<K,V> tailMap(K from)
Object2ObjectSortedMap
fromKey
.
Note that this specification strengthens the one given in SortedMap.tailMap(Object)
.
tailMap
in interface Object2ObjectSortedMap<K,V>
tailMap
in interface SortedMap<K,V>
SortedMap.tailMap(Object)
public Object2ObjectSortedMap<K,V> subMap(K from, K to)
Object2ObjectSortedMap
fromKey
, inclusive, to toKey
, exclusive.
Note that this specification strengthens the one given in SortedMap.subMap(Object,Object)
.
subMap
in interface Object2ObjectSortedMap<K,V>
subMap
in interface SortedMap<K,V>
SortedMap.subMap(Object,Object)
public Object2ObjectAVLTreeMap<K,V> clone()
This method performs a deep copy of this tree map; the data stored in the set, however, is not cloned. Note that this makes a difference only for object keys.
clone
in class Object
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |