【发布时间】:2011-03-22 05:19:52
【问题描述】:
我了解队列是一种通过头部和/或尾部访问的集合类型。
我也明白 map 是一种集合类型,它包含许多唯一键,每个键都有一个关联的值。
我需要的是一个映射,具有固定数量的值,其中的键将设置一次,并且在首次设置后不会更改。
我无法理解的困难部分是让值充当具有固定长度的队列,可以推送而不影响键。
例如:
初始集合(最新项目在顶部):
Key1, Value1
Key2, Value2
Key3, Value3
添加新值NewValue后的集合:
Key1, NewValue
Key2, Value1
Key3, Value2
因此,我希望密钥保持不变,并能够添加新值,方法是将最旧的值推到末尾,并将所有其他值进一步向下移动到末尾。
如果框架中没有这样的类型,请有人推荐一种实现它的方法。
谢谢!
编辑: 我为什么需要这样做的一个例子:
我需要能够访问这些值 根据它的时间段 创建于。
示例:键:0 将包含今天的值
键:-1 将包含昨天的值
键:-2 将包含两天前的值
等等。每次只输入一个值 天,一个值总是 每天输入。
【问题讨论】:
-
呃,也许您可以描述一下您为什么要这样做。我怀疑有更好的方法。
-
现在添加更多信息。
-
所以您只需添加
NewValue,而无需指定它与什么键一起使用,并且您的“地图”知道它与Key1相关联?或者你想要每个键都有一个单独的队列?还不清楚.... -
是的,我想添加
NewValue并将其与Key1关联,同时将其余值向下推到下一个键。
标签: java collections map queue