SparseIntArray
public
class
SparseIntArray
extends Object
| java.lang.Object | |
| ↳ | com.android.utils.SparseIntArray |
SparseIntArray 将整数映射到整数。与常规整数数组不同,索引中可能存在缺口。与使用 HashMap 将整数映射到整数相比,它旨在提高效率。
摘要
公共构造函数 | |
|---|---|
SparseIntArray()
创建一个不包含任何映射的新 SparseIntArray。 |
|
SparseIntArray(int initialCapacity)
创建一个新的 SparseIntArray,其中不包含任何映射,并且不需要任何额外的内存分配来存储指定数量的映射。 |
|
公共方法 | |
|---|---|
void
|
append(int key, int value)
将键值对放入数组中,针对键大于数组中所有现有键的情况进行了优化。 |
void
|
clear()
移除此 SparseIntArray 中的所有键值映射。 |
void
|
delete(int key)
移除指定键的映射(如果有)。 |
int
|
get(int key)
获取指定键映射的整数,如果没有此类映射,则返回 |
int
|
get(int key, int valueIfKeyNotFound)
获取从指定键映射的整数,如果没有此类映射,则获取指定的值。 |
int
|
indexOfKey(int key)
返回 |
int
|
indexOfValue(int value)
返回一个索引,该索引对应的 |
int
|
keyAt(int index)
给定范围 |
void
|
put(int key, int value)
添加从指定键到指定值的映射,如果之前存在从指定键到其他值的映射,则替换该映射。 |
void
|
removeAt(int index)
移除指定索引处的映射。 |
int
|
size()
返回此 SparseIntArray 当前存储的键值对映射的数量。 |
int
|
valueAt(int index)
给定范围为 |
公共构造函数
SparseIntArray
public SparseIntArray ()
创建一个不包含任何映射的新 SparseIntArray。
SparseIntArray
public SparseIntArray (int initialCapacity)
创建一个新的 SparseIntArray,其中不包含任何映射,并且不需要任何额外的内存分配来存储指定数量的映射。
| 参数 | |
|---|---|
initialCapacity |
int |
公共方法
附加
public void append (int key,
int value)将键值对放入数组中,针对键大于数组中所有现有键的情况进行了优化。
| 参数 | |
|---|---|
key |
int |
value |
int |
清除
public void clear ()
移除此 SparseIntArray 中的所有键值映射。
删除
public void delete (int key)
移除指定键的映射(如果有)。
| 参数 | |
|---|---|
key |
int |
get
public int get (int key)
获取指定键映射的整数,如果没有此类映射,则返回 0。
| 参数 | |
|---|---|
key |
int |
| 返回 | |
|---|---|
int |
|
get
public int get (int key,
int valueIfKeyNotFound)获取从指定键映射的整数,如果没有此类映射,则获取指定的值。
| 参数 | |
|---|---|
key |
int |
valueIfKeyNotFound |
int |
| 返回 | |
|---|---|
int |
|
indexOfKey
public int indexOfKey (int key)
返回 keyAt(int) 将返回指定键的索引,如果未映射指定键,则返回负数。
| 参数 | |
|---|---|
key |
int |
| 返回 | |
|---|---|
int |
|
indexOfValue
public int indexOfValue (int value)
返回一个索引,该索引对应的 valueAt(int) 会返回指定键;如果没有键映射到指定值,则返回一个负数。请注意,这是一种线性搜索,与按键进行的查找不同,并且多个键可以映射到同一个值,但此方法只会找到其中一个键。
| 参数 | |
|---|---|
value |
int |
| 返回 | |
|---|---|
int |
|
keyAt
public int keyAt (int index)
给定范围 0...size()-1 内的索引,返回此 SparseIntArray 存储的第 index
个键值映射中的键。
| 参数 | |
|---|---|
index |
int |
| 返回 | |
|---|---|
int |
|
放置
public void put (int key,
int value)添加从指定键到指定值的映射,如果之前存在从指定键到其他值的映射,则替换该映射。
| 参数 | |
|---|---|
key |
int |
value |
int |
removeAt
public void removeAt (int index)
移除指定索引处的映射。
| 参数 | |
|---|---|
index |
int |
size
public int size ()
返回此 SparseIntArray 当前存储的键值对映射的数量。
| 返回 | |
|---|---|
int |
|
valueAt
public int valueAt (int index)
给定一个范围为 0...size()-1 的索引,返回此 SparseIntArray 存储的第 index
个键值映射中的值。
| 参数 | |
|---|---|
index |
int |
| 返回 | |
|---|---|
int |
|