我想将一些数据存储在一个集合中用于动画目的,这个想法是动画数据存储在关键帧中.要想知道你在动画中的位置,你需要知道在任何特定时间哪个项目是相关的.所以我的问题是,是否存在任何可以支持基于在特定范围内传递的密钥对对象进行检索的集合API.
一个例子如下
如果我有一些代表下面"时间"的数据
0.0
1.0
2.5
2.7
3.0
我希望能够存储数据,这样如果我传入一个键值,我将返回最低的匹配值.下面是一些示例键值
0.7将检索0.0对象
2.49将检索1.0对象
2.7将检索2.7对象
10.0将检索3.0对象
我完全知道我可能自己编写了一些代码但是我想检查是否已存在任何已执行此操作的API.
您需要一个NavigableSet(由TreeSet实现)(或由TreeMap实现的NavigableMap).它有如下方法floor(E e):
返回此set中小于或等于给定元素的最大元素,如果没有这样的元素,则返回null.