scala sort
时间: 2024-01-11 15:20:52 浏览: 53
在Scala中,可以使用`sorted`方法对集合进行排序。`sorted`方法是基于`java.util.Arrays.sort`实现的,默认按照从小到大的顺序进行排序。如果想要按照其他规则进行排序,可以通过定义排序方法来改变排序规则。
以下是一个示例代码,演示了如何使用`sorted`方法对数组进行排序:
```scala
val arr = Array(5, 3, 8, 2, 1)
val sortedArr = arr.sorted
println(sortedArr.mkString(", ")) // 输出:1, 2, 3, 5, 8
```
在上面的代码中,我们创建了一个整型数组`arr`,然后使用`sorted`方法对数组进行排序,并将排序后的结果打印出来。
如果想要按照自定义的排序规则进行排序,可以使用`sortWith`方法。`sortWith`方法接受一个比较函数作为参数,该函数定义了排序的规则。比较函数需要接受两个参数,并返回一个布尔值,表示两个元素的比较结果。
以下是一个示例代码,演示了如何使用`sortWith`方法按照自定义的排序规则对数组进行排序:
```scala
val arr = Array(5, 3, 8, 2, 1)
val sortedArr = arr.sortWith((a, b) => a > b)
println(sortedArr.mkString(", ")) // 输出:8, 5, 3, 2, 1
```
在上面的代码中,我们定义了一个比较函数`(a, b) => a > b`,表示按照从大到小的顺序进行排序。然后使用`sortWith`方法对数组进行排序,并将排序后的结果打印出来。