scala - 理解 Scala 代码 : (-_. _2)

标签 scala

帮助我理解这个 Scala 代码:

sortBy(-_._2)

我知道第一个下划线( _ )是占位符。我了解 _2表示元组的第二个成员。
但是这个代码中的减号( - )代表什么?

最佳答案

倒序(即降序),您按减去元组的第二个字段进行排序

下划线是匿名参数,所以 -_ 与 x => -x 基本相同

普通 scala 中的一些示例:

scala> List(1,2,3).sortBy(-_)
res0: List[Int] = List(3, 2, 1)

scala> List("a"->1,"b"->2, "c"->3).sortBy(-_._2)
res1: List[(String, Int)] = List((c,3), (b,2), (a,1))

scala> List(1,2,3).sortBy(x => -x)
res2: List[Int] = List(3, 2, 1)

关于scala - 理解 Scala 代码 : (-_. _2),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35814836/

相关文章:

scala - 使用 Play 2.6 和 akka 流的 Websocket 代理

scala - 当外部类在 Scala 中声明为 var 时实例化内部类

Scala:在 if 条件中声明 val

scala - 如何从 pyspark 设置 hadoop 配置值

使用 scala 解析器组合器解析基于缩进的语言

scala - Scala 中方法的条件调用

scala - Function.tupled 和占位符语法

scala - 如何使用高阶函数展平选项列表?

scala - 为什么这里需要括号?

java - 理解 Actor 创作的 Prop