是否存在返回最近包含的键的Java映射实现

是否存在返回最近包含的键的Java映射实现,java,dictionary,Java,Dictionary,我正在寻找一个Map实现,它返回与请求的键相关的值,或者如果不存在,则返回最接近的值,根据请求更高或更低(以及实际的键,可能作为Map.Entry) 例如,如果映射包含以下字符串键/值对: 阿尔法:是,贝塔:蜜蜂,查理:中东欧,德尔塔:迪 如果你要“加拿大”的“下一个更高”,你会得到回报的查理:CEE 当然,如果你要求“查理”再高一点或再低一点,你会得到回报的 它应该使用比较器,这样,如果它包含数字键1、2、3,并且我请求1.4的下一个更高值,它将返回2键。使用导航地图: 特别是,使用Floo

我正在寻找一个Map实现,它返回与请求的键相关的值,或者如果不存在,则返回最接近的值,根据请求更高或更低(以及实际的键,可能作为Map.Entry)

例如,如果映射包含以下字符串键/值对:
阿尔法:是,贝塔:蜜蜂,查理:中东欧,德尔塔:迪
如果你要“加拿大”的“下一个更高”,你会得到回报的查理:CEE

当然,如果你要求“查理”再高一点或再低一点,你会得到回报的

它应该使用比较器,这样,如果它包含数字键1、2、3,并且我请求1.4的下一个更高值,它将返回2键。

使用导航地图:

特别是,使用FloorRentry或ceilingEntry或其组合

TreeMap是NavigableMap的一个实例,因此您可以使用它: