假设我有一对TreeMultimap(来自Google Guava库),带有成对的键/值。如果我有一个键(假设键的类型为int),我将如何获取该键和最近的键的值?
例如,我的treemultimap是:
1 - > “你好”
3 - > “HOLA”
5 - > “的Bonjour”
我的密钥是5.我想检索最近的密钥(将是3)。然后我可以使用该密钥来检索最近的值。
看起来这应该是一个简单的问题,导航到拥有的密钥,然后迭代到下一个,但我找不到任何功能与TreeMultimap,这将允许我这样做(即没有功能这使我可以访问节点本身,我可以允许检索密钥集合并以线性方式迭代它们,这违背了排序树的目的。我觉得有一个简单的解决方案,我错过了。非常感谢您的帮助!
答案 0 :(得分:2)
TreeMultimap.keySet()
返回NavigableSet
。因此,例如,可以使用k
检索TreeMultimap.keySet().lower(k)
的下一个较低的键。