gpt4 book ai didi

java - 用 java 降序输出 Map.Entry

转载 作者:行者123 更新时间:2023-12-01 14:07:27 25 4
gpt4 key购买 nike

显然这是一个非常幼稚的尝试,但我在编程方面非常缺乏经验。我想要做的是按降序打印这些值,即最大的将首先打印,然后最小的打印最后,我怎样才能做到这一点?

for (Map.Entry<Sentence, Integer> entry : ontology.ruleCount.entrySet()) 
{
if(entry.getValue() >= 10)
System.out.println(entry.getKey()+" : "+entry.getValue());

if(entry.getValue() >= 9)
System.out.println(entry.getKey()+" : "+entry.getValue());

if(entry.getValue() >= 8)
System.out.println(entry.getKey()+" : "+entry.getValue());

if(entry.getValue() >= 7)
System.out.println(entry.getKey()+" : "+entry.getValue());

if(entry.getValue() >= 6)
System.out.println(entry.getKey()+" : "+entry.getValue());

if(entry.getValue() >= 5)
System.out.println(entry.getKey()+" : "+entry.getValue());

if(entry.getValue() >= 4)
System.out.println(entry.getKey()+" : "+entry.getValue());

if(entry.getValue() >= 3)
System.out.println(entry.getKey()+" : "+entry.getValue());

if(entry.getValue() >= 2)
System.out.println(entry.getKey()+" : "+entry.getValue());
}

最佳答案

您需要对 map 条目的集合进行排序。在 Java 8 中,这需要非常简单的代码:

ontology.ruleCount.entrySet().stream()
.sorted(reverseOrder(Map.Entry.comparingByValue()))
.forEach(e -> System.out.println(e.getKey() + " : " + e.getValue()));

(暗示 import static java.util.Collections.reverseOrder; )

关于java - 用 java 降序输出 Map.Entry<Sentence, Integer>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28136939/

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