美文网首页
SparseArray 原理

SparseArray 原理

作者: 多多爱美丽 | 来源:发表于2017-10-12 11:12 被阅读0次

    SparseArray 是Android 特有的api,标准jdk里面没有这个类,在Android内部用来替代HashMap这种形式;SparseArray更加节省内存的使用,SparseArray也是以key和value对数据进行保存的.使用的时候只需要指定value的类型即可.并且key不需要封装成对象类型.

    HashMap是数组和链表的结合体,被称为链表散列.

    SparseArray是单纯数组的结合.被称为稀疏数组,对数据保存的时候,不会有额外的开销.结构如下:

    SparseArray每次的插入方式都需要调用二分查找.因此这样在倒序插入的时候会导致情况非常的糟糕,效率上绝对输给了HashMap

    数据量100000条时SparseArray要比HashMap要节约27%的内存.也就是以牺牲效率的代价去节约内存空间.我们知道Android对内存的使用是极为苛刻的.堆区允许使用的最大内存仅仅16M.很容易出现OOM现象的发生.因此在Android中内存的使用是非常的重要的

    相关文章

      网友评论

          本文标题:SparseArray 原理

          本文链接:https://www.haomeiwen.com/subject/nsunyxtx.html