Class ArraySortedMap<K,V> (3.2.0)

public class ArraySortedMap<K,V> extends ImmutableSortedMap<K,V>

This is an array backed implementation of ImmutableSortedMap. It uses arrays and linear lookups to achieve good memory efficiency while maintaining good performance for small collections. To avoid degrading performance with increasing collection size it will automatically convert to a RBTreeSortedMap after an insert call above a certain threshold.

Note: This package is copied from https://github.com/firebase/firebase-admin-java/tree/master/ src/main/java/com/google/firebase/database/collection

Inheritance

java.lang.Object > ImmutableSortedMap > ArraySortedMap<K,V>

Type Parameters

NameDescription
K
V

Static Methods

<A,B,C>buildFrom(List<A> keys, Map<B,C> values, ImmutableSortedMap.Builder.KeyTranslator<A,B> translator, Comparator<A> comparator)

public static ArraySortedMap<A,C> <A,B,C>buildFrom(List<A> keys, Map<B,C> values, ImmutableSortedMap.Builder.KeyTranslator<A,B> translator, Comparator<A> comparator)
Parameters
NameDescription
keysList<A>
valuesMap<B,C>
translatorKeyTranslator<A,B>
comparatorComparator<A>
Returns
TypeDescription
ArraySortedMap<A,C>

<K,V>fromMap(Map<K,V> map, Comparator<K> comparator)

public static ArraySortedMap<K,V> <K,V>fromMap(Map<K,V> map, Comparator<K> comparator)
Parameters
NameDescription
mapMap<K,V>
comparatorComparator<K>
Returns
TypeDescription
ArraySortedMap<K,V>

Constructors

ArraySortedMap(Comparator<K> comparator)

public ArraySortedMap(Comparator<K> comparator)
Parameter
NameDescription
comparatorComparator<K>

Methods

containsKey(K key)

public boolean containsKey(K key)
Parameter
NameDescription
keyK
Returns
TypeDescription
boolean
Overrides

get(K key)

public V get(K key)
Parameter
NameDescription
keyK
Returns
TypeDescription
V
Overrides

getComparator()

public Comparator<K> getComparator()
Returns
TypeDescription
Comparator<K>
Overrides

getMaxKey()

public K getMaxKey()
Returns
TypeDescription
K
Overrides

getMinKey()

public K getMinKey()
Returns
TypeDescription
K
Overrides

getPredecessorKey(K key)

public K getPredecessorKey(K key)
Parameter
NameDescription
keyK
Returns
TypeDescription
K
Overrides

getSuccessorKey(K key)

public K getSuccessorKey(K key)
Parameter
NameDescription
keyK
Returns
TypeDescription
K
Overrides

inOrderTraversal(LLRBNode.NodeVisitor<K,V> visitor)

public void inOrderTraversal(LLRBNode.NodeVisitor<K,V> visitor)
Parameter
NameDescription
visitorNodeVisitor<K,V>
Overrides

indexOf(K key)

public int indexOf(K key)
Parameter
NameDescription
keyK
Returns
TypeDescription
int
Overrides

insert(K key, V value)

public ImmutableSortedMap<K,V> insert(K key, V value)
Parameters
NameDescription
keyK
valueV
Returns
TypeDescription
ImmutableSortedMap<K,V>
Overrides

isEmpty()

public boolean isEmpty()
Returns
TypeDescription
boolean
Overrides

iterator()

public Iterator<Map.Entry<K,V>> iterator()
Returns
TypeDescription
Iterator<Entry<K,V>>
Overrides

iteratorFrom(K key)

public Iterator<Map.Entry<K,V>> iteratorFrom(K key)
Parameter
NameDescription
keyK
Returns
TypeDescription
Iterator<Entry<K,V>>
Overrides

remove(K key)

public ImmutableSortedMap<K,V> remove(K key)
Parameter
NameDescription
keyK
Returns
TypeDescription
ImmutableSortedMap<K,V>
Overrides

reverseIterator()

public Iterator<Map.Entry<K,V>> reverseIterator()
Returns
TypeDescription
Iterator<Entry<K,V>>
Overrides

reverseIteratorFrom(K key)

public Iterator<Map.Entry<K,V>> reverseIteratorFrom(K key)
Parameter
NameDescription
keyK
Returns
TypeDescription
Iterator<Entry<K,V>>
Overrides

size()

public int size()
Returns
TypeDescription
int
Overrides