Android LRUCache检索

 黄晓敏3023 发布于 2023-02-09 13:03

我在Android中实现了一个存储对象的标准LRUCache.每个键都是与存储的Object关联的唯一ObjectId.我的问题是从缓存中检索Object的唯一方法是ObjectId(没有迭代器).实现getAll()方法的最佳方法是什么?另一种选择是将所有ObjectIds存储在某个列表的列表中,因此我可以迭代列表并获取所有对象 - 但是保存所有ObjectIds的最佳方法是什么?

谢谢!

1 个回答
  • 如果您正在使用(或扩展)LruCacheAndroid提供的,它有一个snapshot方法可以返回键(您的ObjectIds)和值(您的对象)的映射.你可以这样做:

    Map<ObjectIds, Object> snapshot = lruCache.snapshot();
    for (ObjectIds id : snapshot.keySet()) {
      Object myObject = lruCache.get(id);
    }
    

    如果您没有使用Android LruCache,那么我认为这取决于您的实施.(我也很好奇是什么促使你实现自己的,而不是子类化提供的!)

    2023-02-09 13:06 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有