gpt4 book ai didi

java - 如何打印HashMap元素从最大到最小

转载 作者:行者123 更新时间:2023-12-01 16:49:14 33 4
gpt4 key购买 nike

我有一个这样的数据集:

water, 5
eggs, 3
juice, 7
bread, 4

我将所有这些保存在

HashMap<String, Integer> dataSet = new LinkedHashMap<String,Integer>();

现在我想创建一个函数来打印从最大整数到最小整数的元素:

juice, 7
water, 5
bread, 4
eggs, 3

我认为最简单的方法是创建 HashMap 数据集的副本,然后我必须运行 HashMapCopy,找到最大值,打印最大值元素并将其从列表中删除。

private static void printMaxToMin(){
dataSetCopy = new LinkedHashMap<String,Integer>(dataSet);

}

如何运行所有列表,找到最大值,每次打印具有最大值的元素对,然后将其删除?

最佳答案

这是按值排序的一种方法。

dataSet.entrySet().stream()
.sorted(Map.Entry.<String, Integer>comparingByValue().reversed())
.forEach(x -> {
System.out.println(x.getKey() + ","+ x.getValue());
});

结果:

juice,7
water,5
bread,4
eggs,3

关于java - 如何打印HashMap元素从最大到最小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43922882/

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