在Scala 2.8中,我需要调用List.min并提供我自己的比较函数来获取基于Tuple2的第二个元素的值.我不得不写这种代码:
val list = ("a", 5) :: ("b", 3) :: ("c", 2) :: Nil
list.min( new Ordering[Tuple2[String,Int]] {
def compare(x:Tuple2[String,Int],y:Tuple2[String,Int]): Int = x._2 compare y._2
} )
Run Code Online (Sandbox Code Playgroud)
有没有办法让这个更具可读性,或者像你可以用匿名函数创建一个Ordering list.sortBy(_._2)
?
scala ×1