现在我有一个像这样的 map
:
Map<Double, MyObject> map = new HashMap<Double, MyObject>();
我想获取 2.0
和 7.0
之间的所有键值。我的 Map
中有数千个不同的值,因此循环遍历每个 key-value
集会对性能造成很大影响。有什么办法可以解决这个问题吗? (或者是否有某种特殊的 map ,用于有数字键?)感谢您的帮助;)
最佳答案
使用 TreeMap
反而。通过其NavigableMap
接口(interface),可以进行范围操作。
NavigableMap<Double, MyObject> map = new TreeMap<>();
Collection<MyObject> keys = map.subMap(2D, 7D).values();
关于Java 如何获取特定键内的所有映射值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24214758/