Class Double2ObjectAVLTreeMap<V>
- java.lang.Object
-
- it.unimi.dsi.fastutil.doubles.AbstractDouble2ObjectFunction<V>
-
- it.unimi.dsi.fastutil.doubles.AbstractDouble2ObjectMap<V>
-
- it.unimi.dsi.fastutil.doubles.AbstractDouble2ObjectSortedMap<V>
-
- it.unimi.dsi.fastutil.doubles.Double2ObjectAVLTreeMap<V>
-
- All Implemented Interfaces:
Double2ObjectFunction<V>,Double2ObjectMap<V>,Double2ObjectSortedMap<V>,Function<Double,V>,Serializable,Cloneable,DoubleFunction<V>,Function<Double,V>,Map<Double,V>,SortedMap<Double,V>
public class Double2ObjectAVLTreeMap<V> extends AbstractDouble2ObjectSortedMap<V> implements Serializable, Cloneable
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.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class it.unimi.dsi.fastutil.doubles.AbstractDouble2ObjectMap
AbstractDouble2ObjectMap.BasicEntry<V>, AbstractDouble2ObjectMap.BasicEntrySet<V>
-
Nested classes/interfaces inherited from interface it.unimi.dsi.fastutil.doubles.Double2ObjectMap
Double2ObjectMap.FastEntrySet<V>
-
Nested classes/interfaces inherited from interface it.unimi.dsi.fastutil.doubles.Double2ObjectSortedMap
Double2ObjectSortedMap.FastSortedEntrySet<V>
-
-
Constructor Summary
Constructors Constructor Description Double2ObjectAVLTreeMap()Creates a new empty tree map.Double2ObjectAVLTreeMap(double[] k, V[] v)Creates a new tree map using the elements of two parallel arrays.Double2ObjectAVLTreeMap(double[] k, V[] v, Comparator<? super Double> c)Creates a new tree map using the elements of two parallel arrays and the given comparator.Double2ObjectAVLTreeMap(Double2ObjectMap<? extends V> m)Creates a new tree map copying a given map.Double2ObjectAVLTreeMap(Double2ObjectSortedMap<V> m)Creates a new tree map copying a given sorted map (and itsComparator).Double2ObjectAVLTreeMap(Comparator<? super Double> c)Creates a new empty tree map with the given comparator.Double2ObjectAVLTreeMap(Map<? extends Double,? extends V> m)Creates a new tree map copying a given map.Double2ObjectAVLTreeMap(SortedMap<Double,V> m)Creates a new tree map copying a given sorted map (and itsComparator).
-
Method Summary
Modifier and Type Method Description voidclear()Removes all of the mappings from this map (optional operation).Double2ObjectAVLTreeMap<V>clone()Returns a deep copy of this tree map.DoubleComparatorcomparator()Returns the comparator associated with this sorted set, or null if it uses its keys' natural ordering.booleancontainsKey(double k)Returns true if this function contains a mapping for the specified key.booleancontainsValue(Object v)ObjectSortedSet<Double2ObjectMap.Entry<V>>double2ObjectEntrySet()Returns a type-specific sorted-set view of the mappings contained in this map.doublefirstDoubleKey()Returns the first (lowest) key currently in this map.Vget(double k)Returns the value to which the given key is mapped.Double2ObjectSortedMap<V>headMap(double to)Returns a view of the portion of this sorted map whose keys are strictly less thantoKey.booleanisEmpty()DoubleSortedSetkeySet()Returns a type-specific sorted set view of the keys contained in this map.doublelastDoubleKey()Returns the last (highest) key currently in this map.Vput(double k, V v)Adds a pair to the map (optional operation).Vremove(double k)Removes the mapping with the given key (optional operation).intsize()Returns the number of key/value mappings in this map.Double2ObjectSortedMap<V>subMap(double from, double to)Returns a view of the portion of this sorted map whose keys range fromfromKey, inclusive, totoKey, exclusive.Double2ObjectSortedMap<V>tailMap(double from)Returns a view of the portion of this sorted map whose keys are greater than or equal tofromKey.ObjectCollection<V>values()Returns a type-specific collection view of the values contained in this map.-
Methods inherited from class it.unimi.dsi.fastutil.doubles.AbstractDouble2ObjectMap
equals, hashCode, putAll, toString
-
Methods inherited from class it.unimi.dsi.fastutil.doubles.AbstractDouble2ObjectFunction
defaultReturnValue, defaultReturnValue
-
Methods inherited from interface it.unimi.dsi.fastutil.doubles.Double2ObjectFunction
apply
-
Methods inherited from interface it.unimi.dsi.fastutil.doubles.Double2ObjectMap
compute, compute, computeIfAbsent, computeIfAbsent, computeIfAbsentPartial, computeIfPresent, computeIfPresent, containsKey, defaultReturnValue, defaultReturnValue, get, getOrDefault, getOrDefault, merge, merge, put, putIfAbsent, putIfAbsent, remove, remove, remove, replace, replace, replace, replace
-
Methods inherited from interface it.unimi.dsi.fastutil.doubles.Double2ObjectSortedMap
entrySet, firstKey, headMap, lastKey, subMap, tailMap
-
Methods inherited from interface java.util.Map
containsKey, equals, forEach, get, hashCode, put, putAll, remove, replaceAll
-
-
-
-
Constructor Detail
-
Double2ObjectAVLTreeMap
public Double2ObjectAVLTreeMap()
Creates a new empty tree map.
-
Double2ObjectAVLTreeMap
public Double2ObjectAVLTreeMap(Comparator<? super Double> c)
Creates a new empty tree map with the given comparator.- Parameters:
c- a (possibly type-specific) comparator.
-
Double2ObjectAVLTreeMap
public Double2ObjectAVLTreeMap(Map<? extends Double,? extends V> m)
Creates a new tree map copying a given map.- Parameters:
m- aMapto be copied into the new tree map.
-
Double2ObjectAVLTreeMap
public Double2ObjectAVLTreeMap(SortedMap<Double,V> m)
Creates a new tree map copying a given sorted map (and itsComparator).- Parameters:
m- aSortedMapto be copied into the new tree map.
-
Double2ObjectAVLTreeMap
public Double2ObjectAVLTreeMap(Double2ObjectMap<? extends V> m)
Creates a new tree map copying a given map.- Parameters:
m- a type-specific map to be copied into the new tree map.
-
Double2ObjectAVLTreeMap
public Double2ObjectAVLTreeMap(Double2ObjectSortedMap<V> m)
Creates a new tree map copying a given sorted map (and itsComparator).- Parameters:
m- a type-specific sorted map to be copied into the new tree map.
-
Double2ObjectAVLTreeMap
public Double2ObjectAVLTreeMap(double[] k, V[] v, Comparator<? super Double> c)Creates a new tree map using the elements of two parallel arrays and the given comparator.- Parameters:
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.- Throws:
IllegalArgumentException- ifkandvhave different lengths.
-
Double2ObjectAVLTreeMap
public Double2ObjectAVLTreeMap(double[] k, V[] v)Creates a new tree map using the elements of two parallel arrays.- Parameters:
k- the array of keys of the new tree map.v- the array of corresponding values in the new tree map.- Throws:
IllegalArgumentException- ifkandvhave different lengths.
-
-
Method Detail
-
put
public V put(double k, V v)
Description copied from interface:Double2ObjectFunctionAdds a pair to the map (optional operation).- Specified by:
putin interfaceDouble2ObjectFunction<V>- Parameters:
k- the key.v- the value.- Returns:
- the old value, or the default return value if no value was present for the given key.
- See Also:
Function.put(Object,Object)
-
remove
public V remove(double k)
Description copied from interface:Double2ObjectFunctionRemoves the mapping with the given key (optional operation).- Specified by:
removein interfaceDouble2ObjectFunction<V>- Parameters:
k- the key.- Returns:
- the old value, or the default return value if no value was present for the given key.
- See Also:
Function.remove(Object)
-
containsValue
public boolean containsValue(Object v)
- Specified by:
containsValuein interfaceMap<Double,V>- Overrides:
containsValuein classAbstractDouble2ObjectMap<V>
-
clear
public void clear()
Description copied from interface:Double2ObjectMapRemoves all of the mappings from this map (optional operation). The map will be empty after this call returns.
-
containsKey
public boolean containsKey(double k)
Description copied from interface:Double2ObjectMapReturns true if this function contains a mapping for the specified key.- Specified by:
containsKeyin interfaceDouble2ObjectFunction<V>- Specified by:
containsKeyin interfaceDouble2ObjectMap<V>- Overrides:
containsKeyin classAbstractDouble2ObjectMap<V>- Parameters:
k- the key.- Returns:
- true if this function associates a value to
key. - See Also:
Map.containsKey(Object)
-
size
public int size()
Description copied from interface:Double2ObjectMapReturns the number of key/value mappings in this map. If the map contains more thanInteger.MAX_VALUEelements, returnsInteger.MAX_VALUE.
-
isEmpty
public boolean isEmpty()
-
get
public V get(double k)
Description copied from interface:Double2ObjectFunctionReturns the value to which the given key is mapped.- Specified by:
getin interfaceDouble2ObjectFunction<V>- Parameters:
k- the key.- Returns:
- the corresponding value, or the default return value if no value was present for the given key.
- See Also:
Function.get(Object)
-
firstDoubleKey
public double firstDoubleKey()
Description copied from interface:Double2ObjectSortedMapReturns the first (lowest) key currently in this map.- Specified by:
firstDoubleKeyin interfaceDouble2ObjectSortedMap<V>- See Also:
SortedMap.firstKey()
-
lastDoubleKey
public double lastDoubleKey()
Description copied from interface:Double2ObjectSortedMapReturns the last (highest) key currently in this map.- Specified by:
lastDoubleKeyin interfaceDouble2ObjectSortedMap<V>- See Also:
SortedMap.lastKey()
-
double2ObjectEntrySet
public ObjectSortedSet<Double2ObjectMap.Entry<V>> double2ObjectEntrySet()
Description copied from interface:Double2ObjectSortedMapReturns a type-specific sorted-set view of the mappings contained in this map.Note that this specification strengthens the one given in the corresponding type-specific unsorted map.
- Specified by:
double2ObjectEntrySetin interfaceDouble2ObjectMap<V>- Specified by:
double2ObjectEntrySetin interfaceDouble2ObjectSortedMap<V>- Returns:
- a type-specific sorted-set view of the mappings contained in this map.
- See Also:
Double2ObjectSortedMap.entrySet()
-
keySet
public DoubleSortedSet keySet()
Returns a type-specific sorted set view of the keys contained in this map.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.- Specified by:
keySetin interfaceDouble2ObjectMap<V>- Specified by:
keySetin interfaceDouble2ObjectSortedMap<V>- Specified by:
keySetin interfaceMap<Double,V>- Specified by:
keySetin interfaceSortedMap<Double,V>- Overrides:
keySetin classAbstractDouble2ObjectSortedMap<V>- Returns:
- a type-specific sorted set view of the keys contained in this map.
- See Also:
Map.keySet()
-
values
public ObjectCollection<V> values()
Returns a type-specific collection view of the values contained in this map.In addition to the semantics of
Map.values(), you can safely cast the collection returned by this call to a type-specific collection interface.- Specified by:
valuesin interfaceDouble2ObjectMap<V>- Specified by:
valuesin interfaceDouble2ObjectSortedMap<V>- Specified by:
valuesin interfaceMap<Double,V>- Specified by:
valuesin interfaceSortedMap<Double,V>- Overrides:
valuesin classAbstractDouble2ObjectSortedMap<V>- Returns:
- a type-specific collection view of the values contained in this map.
- See Also:
Map.values()
-
comparator
public DoubleComparator comparator()
Description copied from interface:Double2ObjectSortedMapReturns the comparator associated with this sorted set, or null if it uses its keys' natural ordering.Note that this specification strengthens the one given in
SortedMap.comparator().- Specified by:
comparatorin interfaceDouble2ObjectSortedMap<V>- Specified by:
comparatorin interfaceSortedMap<Double,V>- See Also:
SortedMap.comparator()
-
headMap
public Double2ObjectSortedMap<V> headMap(double to)
Description copied from interface:Double2ObjectSortedMapReturns a view of the portion of this sorted map whose keys are strictly less thantoKey.Note that this specification strengthens the one given in
SortedMap.headMap(Object).- Specified by:
headMapin interfaceDouble2ObjectSortedMap<V>- See Also:
SortedMap.headMap(Object)
-
tailMap
public Double2ObjectSortedMap<V> tailMap(double from)
Description copied from interface:Double2ObjectSortedMapReturns a view of the portion of this sorted map whose keys are greater than or equal tofromKey.Note that this specification strengthens the one given in
SortedMap.tailMap(Object).- Specified by:
tailMapin interfaceDouble2ObjectSortedMap<V>- See Also:
SortedMap.tailMap(Object)
-
subMap
public Double2ObjectSortedMap<V> subMap(double from, double to)
Description copied from interface:Double2ObjectSortedMapReturns a view of the portion of this sorted map whose keys range fromfromKey, inclusive, totoKey, exclusive.Note that this specification strengthens the one given in
SortedMap.subMap(Object,Object).- Specified by:
subMapin interfaceDouble2ObjectSortedMap<V>- See Also:
SortedMap.subMap(Object,Object)
-
clone
public Double2ObjectAVLTreeMap<V> clone()
Returns a deep copy of this tree map.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.
- Returns:
- a deep copy of this tree map.
-
-