java - 从项目java的地图中检索最后n个项目
问题描述
我有一个map
并且我想检索在最后2 秒内插入的最后50 个项目map
或添加到的项目(以较大者为准)..map
我能做到这一点的最有效方法是什么?
Map<Date, Book> books = new HashMap<Date, Book>();
注意: - 我想最大化吞吐量并最小化延迟。- 我想在 JVM 上运行并最小化堆占用。
解决方案
使用堆栈存储Date
,然后将项目作为堆栈中的键弹出。Date
每当您在HashMap中输入条目时,只需按键即可。
推荐阅读
- upgrade - 如何在 Debian 中升级 javac
- python - 从 python3.7 在 bigquery 中插入时间戳值时出错
- r - 是否有任何 R 函数可以从物种分类 ID/物种名称或属名称中提取所有分类名称(门、类、目、科……)?
- reactjs - 使用 AWS AppSync 和 Amplify 从 GraphQL 查询中获取自定义响应
- mongodb - 为什么在没有 API 的情况下连接 MongoDB 不好?
- c# - 如何将用户 ID 和密码附加到 HTML 电子邮件模板。动态归档
- java - 如何将setter方法传递给Java中的方法的参数?
- python - SQLAlchemy 通过混合属性按外部列排序
- swiftui - SwiftUI Combine 为什么 init 不能绑定数据?
- python - 在 Visual Studio Code 上运行新的 Jupyter 笔记本时出现“ENOTDIR 无效 cwd”