我想知道的性能和效率,SparseArray以及ArrayList和哪一个是更好地使用.我无法理解何时使用SparseArray和什么时候ArrayList?
chi*_*ity 43
SparseArray如果你有一个有很多空白的列表,那么a的目的是节省内存.如果你只有10个项目,并且索引它们的数字范围从0到1000,那么ArrayList它将包含大量null条目,并且这将是非常浪费的.A SparseArray将在内部使用数据结构来避免该问题.
在这种情况下的另一种选择是a HashMap,SparseArray如果你有很多物品,这比a更好.
该实现不适用于可能包含大量项目的数据结构.它通常比传统的HashMap慢,因为查找需要二进制搜索,并且添加和删除需要插入和删除数组中的条目.对于容纳数百件物品的容器,性能差异不显着,小于50%.
来自Android开发文档.
| 归档时间: |
|
| 查看次数: |
26398 次 |
| 最近记录: |