Scala:问题/排序

时间:2014-03-10 00:34:26

标签: scala

Scala的新内容。说我有一个数组:

1,2,3,4,5,6,7,8,9,10

并希望从6

取回所有数字

我如何在Scala中实现这一目标?

2 个答案:

答案 0 :(得分:2)

我可能会误解你的要求。你想要6到10的所有数字吗?如果是的话,

val nums = List(1,2,3,4,5,6,7,8,9,10)
nums.filter(_ >= 6)

答案 1 :(得分:1)

你可以这样做:

 val l = List(1,2,3,4,5,6,7,8,9,10)
 l.sortBy(num => Math.abs(num - 6))

查看List的sortBy方法文档:http://www.scala-lang.org/api/2.10.3/index.html#scala.collection.immutable.List

sortBy将定义顺序的函数作为参数。在我们的例子中,排序函数采用单个参数num并将其映射到距离数字6的距离。距离计算为从给定数字减去的绝对值6。