gpt4 book ai didi

java - Google Guava TreeMultimap——根据排序顺序检索值?

转载 作者:行者123 更新时间:2023-11-30 09:20:51 27 4
gpt4 key购买 nike

我正在尝试实现一些需要对 <Destination -> Quantity> 的值进行排序的东西 map ,例如:

<San Francisco -> 10, Seattle -> 20, LA -> 10}

值不一定不同。我希望能够检索具有最大和最小值的键/值对,类似于 TreeMap 能够对键执行的操作。

我找到了 Google Guava 的 TreeMultimap,它是 Multimap 的一个实现,其键和值按其自然顺序或按提供的比较器排序。问题是,TreeMultimap 似乎没有任何方法可以让我根据键或值的顺序检索键/值对(例如 pollFirstEntry() 在 TreeMap 中所做的)。

就此而言,我对如何使 TreeMultimap 获得此功能有些困惑。我觉得它应该可以工作,也许这只是我如何实例化对象的问题?

最佳答案

TreeMultimap不会以您正在寻找的方式支持这一点,我很确定。

你可以做的是 TreeMultimap<Integer, String> -- 交换键和值的角色 -- 然后是 TreeMultimap.asMap().lastEntry()会给你一个Map.Entry<Integer, Collection<String>> ,对应最大Integer和所有 String s 与之关联。

TreeMultimap 绝对支持一件事将所有 键的组合值视为单个排序集合。 (当然,您可以使用 values() 将它们视为一个未排序集合。)

关于java - Google Guava TreeMultimap——根据排序顺序检索值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17200121/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com