美文网首页
Android何时使用ArrayMap、SparseArray代

Android何时使用ArrayMap、SparseArray代

作者: 走在路上的日子 | 来源:发表于2018-05-31 17:37 被阅读0次

    hashMap默认容量16,装载因子0.75,超过装载因子容量自动翻倍,这个过程要重组数组结构,比较费时和费内存。所以如果动态加载大量数据时要注意。但查找数据正常时快于以下两个,因为hash是直接定位,而下面两个是二分法查找。

    所以,如果是装载静态字典,继续用HashMap。

    满足下面两个条件我们可以使用SparseArray代替HashMap:

    数据量不大,最好在千级以内

    key必须为int类型,这中情况下的HashMap可以用SparseArray代替:

    SparseArray和ArrayMap都差不多,使用哪个呢? 

    假设数据量都在千级以内的情况下:

    1、如果key的类型已经确定为int类型,那么使用SparseArray,因为它避免了自动装箱的过程,如果key为long类型,它还提供了一个LongSparseArray来确保key为long类型时的使用

    2、如果key类型为其它的类型,则使用ArrayMap

    相关文章

      网友评论

          本文标题:Android何时使用ArrayMap、SparseArray代

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