获取 Scala 映射中的最大值和键

get the maximum value in scala map along with the key

任何人都可以帮助如何获得地图中的最大值及其键。 例如下面的地图:

Map(s -> 3, h -> 2, M -> 1, q-> 4)

我应该得到键值 (q -> 4),因为 4 是最高的。

我尝试了 max 方法、键和值迭代器。但是 return 的 none 键和值。

你觉得这怎么样?

map.maxBy { case (key, value) => value }

您可以通过以下方式获得您想要的:

 map.filter{case (k,v) => v == map.values.max}

map.values.max 你得到最大值,然后把它插入到 filter 语句你得到整个键值对

您可以将 maxBy 用作

val map_values = Map("s" -> 3, "h" -> 2, "M" -> 1, "q"-> 4)
println(map_values.maxBy(_._2))
//(q,4)