【发布时间】:2016-06-03 08:47:18
【问题描述】:
我有一张地图,以下列格式存储一个人工资的时间序列数据
HashMap<Date,Double> salaryHistory;
变量salaryHistory 可以包含从 1AD 到甚至 2100AD 的数据。
我正在使用subMap 从哈希图中过滤数据,但我在以下场景中面临挑战
考虑这样的人的薪水
Jan-01-1969, 100
Jan-01-1979, 200
当用户查询 1970 年 1 月 1 日到 1972 年 1 月 1 日之间的工资时,subMap 返回“null”,但实际上应该返回 100,因为该人的工资在 1969 年是 100,并且从未改变直到 1979 年。
有没有简单的方法来做到这一点?像图书馆一样。
请提供您宝贵的建议
【问题讨论】:
-
您的逻辑不能只测试给定日期是否在两个键之间并提供两个值中的较低值吗?
标签: java hashmap time-series treemap