Constructor and Description |
---|
SparseArray()
Creates a new SparseArray containing no mappings.
|
SparseArray(int initialCapacity)
Creates a new SparseArray containing no mappings that will not
require any additional memory allocation to store the specified
number of mappings.
|
Modifier and Type | Method and Description |
---|---|
void |
append(int key,
E value)
Puts a key/value pair into the array, optimizing for the case where
the key is greater than all existing keys in the array.
|
void |
clear()
Removes all key-value mappings from this SparseArray.
|
SparseArray<E> |
clone()
Creates and returns a copy of this
Object . |
void |
delete(int key)
Removes the mapping from the specified key, if there was any.
|
E |
get(int key)
Gets the Object mapped from the specified key, or
null
if no such mapping has been made. |
E |
get(int key,
E valueIfKeyNotFound)
Gets the Object mapped from the specified key, or the specified Object
if no such mapping has been made.
|
int |
indexOfKey(int key)
Returns the index for which
keyAt(int) would return the
specified key, or a negative number if the specified
key is not mapped. |
int |
indexOfValue(E value)
Returns an index for which
valueAt(int) would return the
specified key, or a negative number if no keys map to the
specified value. |
int |
keyAt(int index)
Given an index in the range
0...size()-1 , returns
the key from the index th key-value mapping that this
SparseArray stores. |
void |
put(int key,
E value)
Adds a mapping from the specified key to the specified value,
replacing the previous mapping from the specified key if there
was one.
|
void |
remove(int key)
Alias for
delete(int) . |
void |
removeAt(int index)
Removes the mapping at the specified index.
|
void |
setValueAt(int index,
E value)
Given an index in the range
0...size()-1 , sets a new
value for the index th key-value mapping that this
SparseArray stores. |
int |
size()
Returns the number of key-value mappings that this SparseArray
currently stores.
|
E |
valueAt(int index)
Given an index in the range
0...size()-1 , returns
the value from the index th key-value mapping that this
SparseArray stores. |
public SparseArray()
public SparseArray(int initialCapacity)
public SparseArray<E> clone()
Object
Object
. The default
implementation returns a so-called "shallow" copy: It creates a new
instance of the same class and then copies the field values (including
object references) from this instance to the new instance. A "deep" copy,
in contrast, would also recursively clone nested objects. A subclass that
needs to implement this kind of cloning should call super.clone()
to create the new instance and then create deep copies of the nested,
mutable objects.public E get(int key)
null
if no such mapping has been made.public E get(int key, E valueIfKeyNotFound)
public void delete(int key)
public void remove(int key)
delete(int)
.public void removeAt(int index)
public void put(int key, E value)
public int size()
public int keyAt(int index)
0...size()-1
, returns
the key from the index
th key-value mapping that this
SparseArray stores.public E valueAt(int index)
0...size()-1
, returns
the value from the index
th key-value mapping that this
SparseArray stores.public void setValueAt(int index, E value)
0...size()-1
, sets a new
value for the index
th key-value mapping that this
SparseArray stores.public int indexOfKey(int key)
keyAt(int)
would return the
specified key, or a negative number if the specified
key is not mapped.public int indexOfValue(E value)
valueAt(int)
would return the
specified key, or a negative number if no keys map to the
specified value.
Beware that this is a linear search, unlike lookups by key,
and that multiple keys can map to the same value and this will
find only one of them.public void clear()
public void append(int key, E value)