gpt4 book ai didi

java - 如何在Java中获取HashMap的前10个键值

转载 作者:行者123 更新时间:2023-11-30 02:36:37 28 4
gpt4 key购买 nike

我有这样的 HashMap :

{apple, 20}, {nanas,18}, {anggur, 12},...........

我的 HashMap 已经按值降序排序。我想从第一个元素 HashMap 中获取 10 个元素。

谁能帮我吗?

最佳答案

如果你使用 java 8,我会选择:

List<MyKeyType> keys = map.entrySet().stream()
.map(Map.Entry::getKey)
.sorted()
.limit(10)
.collect(Collectors.toList());

它是如何工作的:

  1. entrySet().steam() - 获取 map 的条目集,并创建其值的流。
  2. map() - 从 Map.Entry 获取键值并将其进一步向下传递
  3. sorted() - 如果类实现 Comparator 接口(interface),则默认情况下将使用它,或者您可以根据需要提供自己的实现。
  4. limit(10) - 将对象数量限制为 10。
  5. 将排序后的 10 个值收集到一个列表中。

sorted() 方法采用可选的 Comparator 参数,您可以根据需要在其中提供自定义排序逻辑。

关于java - 如何在Java中获取HashMap的前10个键值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42878542/

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