我有这样的哈希图:
{apple, 20}, {nanas,18}, {anggur, 12},...........
我的哈希图已经按值降序排序。我想从第一个元素哈希图中获取 10 个元素。
谁能帮我 ?
如果你使用 java 8,我会选择:
List<MyKeyType> keys = map.entrySet().stream()
.map(Map.Entry::getKey)
.sorted()
.limit(10)
.collect(Collectors.toList());
怎么运行的:
- EntrySet().steam() - 获取映射的条目集,并创建其值的流。
- map() - 从 Map.Entry 获取键值并将其进一步传递到流中
- Sorted() - 如果该类实现 Comparator 接口,则默认情况下将使用它,或者您可以根据需要提供自己的实现。
- limit(10) - 将对象数量限制为 10。
- 将排序后的 10 个值收集到一个列表中。
sorted() 方法采用可选的 Comparator 参数,如果需要,您可以在其中提供自定义排序逻辑。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)