|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectit.unimi.dsi.fastutil.bytes.AbstractByte2LongFunction
it.unimi.dsi.fastutil.bytes.AbstractByte2LongMap
it.unimi.dsi.fastutil.bytes.AbstractByte2LongSortedMap
it.unimi.dsi.fastutil.bytes.Byte2LongRBTreeMap
public class Byte2LongRBTreeMap
A type-specific red-black 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.bytes.AbstractByte2LongSortedMap |
---|
AbstractByte2LongSortedMap.KeySetIterator, AbstractByte2LongSortedMap.ValuesCollection, AbstractByte2LongSortedMap.ValuesIterator |
Nested classes/interfaces inherited from class it.unimi.dsi.fastutil.bytes.AbstractByte2LongMap |
---|
AbstractByte2LongMap.BasicEntry |
Nested classes/interfaces inherited from interface it.unimi.dsi.fastutil.bytes.Byte2LongSortedMap |
---|
Byte2LongSortedMap.FastSortedEntrySet |
Nested classes/interfaces inherited from interface it.unimi.dsi.fastutil.bytes.Byte2LongMap |
---|
Byte2LongMap.FastEntrySet |
Field Summary | |
---|---|
protected ByteComparator |
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<Byte2LongMap.Entry> |
entries
Cached set of entries. |
protected it.unimi.dsi.fastutil.bytes.Byte2LongRBTreeMap.Entry |
firstEntry
The first key in this map. |
protected ByteSortedSet |
keys
Cached set of keys. |
protected it.unimi.dsi.fastutil.bytes.Byte2LongRBTreeMap.Entry |
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 Byte> |
storedComparator
This map's comparator, as provided in the constructor. |
protected it.unimi.dsi.fastutil.bytes.Byte2LongRBTreeMap.Entry |
tree
A reference to the root entry. |
protected LongCollection |
values
Cached collection of values. |
Fields inherited from class it.unimi.dsi.fastutil.bytes.AbstractByte2LongFunction |
---|
defRetValue |
Constructor Summary | |
---|---|
Byte2LongRBTreeMap()
Creates a new empty tree map. |
|
Byte2LongRBTreeMap(byte[] k,
long[] v)
Creates a new tree map using the elements of two parallel arrays. |
|
Byte2LongRBTreeMap(byte[] k,
long[] v,
Comparator<? super Byte> c)
Creates a new tree map using the elements of two parallel arrays and the given comparator. |
|
Byte2LongRBTreeMap(Byte2LongMap m)
Creates a new tree map copying a given map. |
|
Byte2LongRBTreeMap(Byte2LongSortedMap m)
Creates a new tree map copying a given sorted map (and its Comparator ). |
|
Byte2LongRBTreeMap(Comparator<? super Byte> c)
Creates a new empty tree map with the given comparator. |
|
Byte2LongRBTreeMap(Map<? extends Byte,? extends Long> m)
Creates a new tree map copying a given map. |
|
Byte2LongRBTreeMap(SortedMap<Byte,Long> m)
Creates a new tree map copying a given sorted map (and its Comparator ). |
Method Summary | |
---|---|
ObjectSortedSet<Byte2LongMap.Entry> |
byte2LongEntrySet()
Returns a type-specific sorted-set view of the mappings contained in this map. |
void |
clear()
Removes all associations from this function (optional operation). |
Byte2LongRBTreeMap |
clone()
Returns a deep copy of this tree map. |
ByteComparator |
comparator()
Returns the comparator associated with this sorted set, or null if it uses its keys' natural ordering. |
boolean |
containsKey(byte k)
Checks whether the given value is contained in AbstractByte2LongMap.keySet() . |
boolean |
containsValue(long v)
Checks whether the given value is contained in AbstractByte2LongMap.values() . |
byte |
firstByteKey()
|
long |
get(byte k)
Returns the value to which the given key is mapped. |
Byte2LongSortedMap |
headMap(byte to)
Returns a view of the portion of this sorted map whose keys are strictly less than toKey . |
boolean |
isEmpty()
|
ByteSortedSet |
keySet()
Returns a type-specific sorted set view of the keys contained in this map. |
byte |
lastByteKey()
|
long |
put(byte k,
long v)
Adds a pair to the map. |
Long |
put(Byte ok,
Long ov)
Delegates to the corresponding type-specific method, taking care of returning null on a missing key. |
long |
remove(byte k)
Removes the mapping with the given key. |
Long |
remove(Object ok)
Delegates to the corresponding type-specific method, taking care of returning null on a missing key. |
int |
size()
Returns the intended number of keys in this function, or -1 if no such number exists. |
Byte2LongSortedMap |
subMap(byte from,
byte to)
Returns a view of the portion of this sorted map whose keys range from fromKey , inclusive, to toKey , exclusive. |
Byte2LongSortedMap |
tailMap(byte from)
Returns a view of the portion of this sorted map whose keys are greater than or equal to fromKey . |
LongCollection |
values()
Returns a type-specific collection view of the values contained in this map. |
Methods inherited from class it.unimi.dsi.fastutil.bytes.AbstractByte2LongSortedMap |
---|
entrySet, firstKey, headMap, lastKey, subMap, tailMap |
Methods inherited from class it.unimi.dsi.fastutil.bytes.AbstractByte2LongMap |
---|
containsValue, equals, hashCode, putAll, toString |
Methods inherited from class it.unimi.dsi.fastutil.bytes.AbstractByte2LongFunction |
---|
containsKey, defaultReturnValue, defaultReturnValue, get |
Methods inherited from class java.lang.Object |
---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface it.unimi.dsi.fastutil.bytes.Byte2LongFunction |
---|
defaultReturnValue, defaultReturnValue |
Methods inherited from interface it.unimi.dsi.fastutil.Function |
---|
containsKey, get |
Methods inherited from interface java.util.Map |
---|
containsKey, containsValue, equals, get, hashCode, putAll |
Field Detail |
---|
protected transient it.unimi.dsi.fastutil.bytes.Byte2LongRBTreeMap.Entry tree
protected int count
protected transient it.unimi.dsi.fastutil.bytes.Byte2LongRBTreeMap.Entry firstEntry
protected transient it.unimi.dsi.fastutil.bytes.Byte2LongRBTreeMap.Entry lastEntry
protected transient volatile ObjectSortedSet<Byte2LongMap.Entry> entries
protected transient volatile ByteSortedSet keys
protected transient volatile LongCollection values
protected transient boolean modified
put()
or a remove()
, whether the domain of the map
has been modified.
protected Comparator<? super Byte> storedComparator
protected transient ByteComparator 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 Byte2LongRBTreeMap()
public Byte2LongRBTreeMap(Comparator<? super Byte> c)
c
- a (possibly type-specific) comparator.public Byte2LongRBTreeMap(Map<? extends Byte,? extends Long> m)
m
- a Map
to be copied into the new tree map.public Byte2LongRBTreeMap(SortedMap<Byte,Long> m)
Comparator
).
m
- a SortedMap
to be copied into the new tree map.public Byte2LongRBTreeMap(Byte2LongMap m)
m
- a type-specific map to be copied into the new tree map.public Byte2LongRBTreeMap(Byte2LongSortedMap m)
Comparator
).
m
- a type-specific sorted map to be copied into the new tree map.public Byte2LongRBTreeMap(byte[] k, long[] v, Comparator<? super Byte> 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 Byte2LongRBTreeMap(byte[] k, long[] 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 long put(byte k, long v)
Byte2LongFunction
put
in interface Byte2LongFunction
put
in class AbstractByte2LongFunction
k
- the key.v
- the value.
Function.put(Object,Object)
public long remove(byte k)
Byte2LongFunction
remove
in interface Byte2LongFunction
remove
in class AbstractByte2LongFunction
Function.remove(Object)
public Long put(Byte ok, Long ov)
AbstractByte2LongFunction
null
on a missing key.
This method must check whether the provided key is in the map using containsKey()
. Thus,
it probes the map twice. Implementors of subclasses should override it with a more efficient method.
put
in interface Function<Byte,Long>
put
in interface Map<Byte,Long>
put
in class AbstractByte2LongFunction
ok
- the key.ov
- the value.
null
if no value was present for the given key.Map.put(Object,Object)
public Long remove(Object ok)
AbstractByte2LongFunction
null
on a missing key.
This method must check whether the provided key is in the map using containsKey()
. Thus,
it probes the map twice. Implementors of subclasses should override it with a more efficient method.
remove
in interface Function<Byte,Long>
remove
in interface Map<Byte,Long>
remove
in class AbstractByte2LongFunction
null
if no value was present for the given key.Map.remove(Object)
public boolean containsValue(long v)
AbstractByte2LongMap
AbstractByte2LongMap.values()
.
containsValue
in interface Byte2LongMap
containsValue
in class AbstractByte2LongMap
Map.containsValue(Object)
public void clear()
Function
clear
in interface Function<Byte,Long>
clear
in interface Map<Byte,Long>
clear
in class AbstractByte2LongFunction
Map.clear()
public boolean containsKey(byte k)
AbstractByte2LongMap
AbstractByte2LongMap.keySet()
.
containsKey
in interface Byte2LongFunction
containsKey
in class AbstractByte2LongMap
Function.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<Byte,Long>
size
in interface Map<Byte,Long>
public boolean isEmpty()
isEmpty
in interface Map<Byte,Long>
isEmpty
in class AbstractByte2LongMap
public long get(byte k)
Byte2LongFunction
get
in interface Byte2LongFunction
k
- the key.
Function.get(Object)
public byte firstByteKey()
firstByteKey
in interface Byte2LongSortedMap
SortedMap.firstKey()
public byte lastByteKey()
lastByteKey
in interface Byte2LongSortedMap
SortedMap.lastKey()
public ObjectSortedSet<Byte2LongMap.Entry> byte2LongEntrySet()
Byte2LongSortedMap
byte2LongEntrySet
in interface Byte2LongMap
byte2LongEntrySet
in interface Byte2LongSortedMap
Byte2LongSortedMap.entrySet()
public ByteSortedSet 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 Byte2LongMap
keySet
in interface Byte2LongSortedMap
keySet
in interface Map<Byte,Long>
keySet
in interface SortedMap<Byte,Long>
keySet
in class AbstractByte2LongSortedMap
Map.keySet()
public LongCollection 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 Byte2LongMap
values
in interface Byte2LongSortedMap
values
in interface Map<Byte,Long>
values
in interface SortedMap<Byte,Long>
values
in class AbstractByte2LongSortedMap
Map.values()
public ByteComparator comparator()
Byte2LongSortedMap
Note that this specification strengthens the one given in SortedMap.comparator()
.
comparator
in interface Byte2LongSortedMap
comparator
in interface SortedMap<Byte,Long>
SortedMap.comparator()
public Byte2LongSortedMap headMap(byte to)
Byte2LongSortedMap
toKey
.
headMap
in interface Byte2LongSortedMap
SortedMap.headMap(Object)
public Byte2LongSortedMap tailMap(byte from)
Byte2LongSortedMap
fromKey
.
tailMap
in interface Byte2LongSortedMap
SortedMap.tailMap(Object)
public Byte2LongSortedMap subMap(byte from, byte to)
Byte2LongSortedMap
fromKey
, inclusive, to toKey
, exclusive.
subMap
in interface Byte2LongSortedMap
SortedMap.subMap(Object,Object)
public Byte2LongRBTreeMap 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 |