排序整数对的List,使得scala中的List [(Int,Int)]

时间:2017-12-11 17:39:36

标签: scala

我有一个列表,即

List[(Int,Int)]=((5,12),(2,3),(3,14),(4,5),(1,0))

我想先根据第一项对第二项进行排序,然后将其放入List [Int]即 列表[INT] =(12,5,14,3,0) 在这种情况下我该怎么办?

1 个答案:

答案 0 :(得分:1)

尝试sortBymap

scala> val xs = List((5,12),(2,3),(3,14),(4,5),(1,0))
xs: List[(Int, Int)] = List((5,12), (2,3), (3,14), (4,5), (1,0))

scala> xs.sortBy(_._1).map(_._2).reverse
res1: List[Int] = List(12, 5, 14, 3, 0)

请注意,sortBy默认情况下会按升序排列,因此您需要.reverse生成的结果列表