object RunMapSFM { def main(args: Array[String]): Unit = { val mm = Map("ab" -> 12, "e" -> 5, "byyy" -> 99, "muuuu" -> 37) //使用sortBy方法,按键升序排序 val sq1 = mm.toSeq.sortBy(_._1) println(sq1.toMap) //使用sortWith方法,按值降序排序 val sq2 = mm.toSeq.( ? ) println(sq2.toMap) }
时间: 2024-03-27 15:38:42 浏览: 95
可以使用以下代码来实现按值降序排序:
```
object RunMapSFM {
def main(args: Array[String]): Unit = {
val mm = Map("ab" -> 12, "e" -> 5, "byyy" -> 99, "muuuu" -> 37)
// 使用 sortBy 方法,按键升序排序
val sq1 = mm.toSeq.sortBy(_._1)
println(sq1.toMap)
// 使用 sortWith 方法,按值降序排序
val sq2 = mm.toSeq.sortWith(_._2 > _._2)
println(sq2.toMap)
}
}
```
其中 `sortWith` 方法需要传入一个比较函数,这里使用 `_._2 > _._2` 来按值降序排序。最后将排序后的序列再转换为 Map 类型并打印输出即可。输出结果为:
```
Map(ab -> 12, byyy -> 99, e -> 5, muuuu -> 37)
Map(byyy -> 99, muuuu -> 37, ab -> 12, e -> 5)
```
阅读全文