java - 保存按时间排序的最后 10 个对象列表的最佳数据结构是什么
问题描述
我需要一个数据结构队列,哈希映射或堆栈的链表,以便能够保存用户数据的最后 10 个对象,如果用户尝试添加项目编号 11,它应该删除项目编号 0,并确保列表仅有最后 10 个项目。
是否有任何库或算法可以实现这一目标,或者我必须自己实现该算法?
解决方案
您可以使用 Google Guava 库中的EvictingQueue。根据文档:
驱逐队列必须配置最大大小。每次将元素添加到完整队列时,队列都会自动删除其头元素。
推荐阅读
- sed - 命令错误 - Windows 10 上的 SED (GnuWin)
- mysql - 导入到 mysql 时,服务器将字段从 csv 剪切到字符串的前 50 个字符
- python - Python 中的 IQ 测试功能未按预期工作
- mysql - mysql替换选择联合故障
- c# - Exe安装抛出错误该模块应包含程序集清单.Net Core
- java - 如何在方法中将图像添加到 JavaFX 场景?
- python - 如何让协程停止并打印错误信息
- image - Flutter try catch 打开文件
- blazor - Blazor 组件库中的静态图像给出 404
- ios - 由于未决请求错误,CoreData 在 MacOS 应用程序上将数据同步到云时出现问题