這是Scala for the Impatient問題,陣列的章節表述爲產生新的數組,其中所有正至上,那麼負數或零,但在相同的順序
鑑於整數數組,產生一個包含所有新的數組 原始數組的原始順序爲 ,其後跟所有值爲零或負數的原始數組,其原始順序爲 。
我的嘗試是
scala> val b = Array(-1, 2,3,4, -10, 0, -12)
b: Array[Int] = Array(-1, 2, 3, 4, -10, 0, -12)
scala> val(positive, negative) = b partition(_ > 0)
positive: Array[Int] = Array(2, 3, 4)
negative: Array[Int] = Array(-1, -10, 0, -12)
scala> positive ++ negative
res11: Array[Int] = Array(2, 3, 4, -1, -10, 0, -12)
我可以做一個行這更好的?我不知道
非常整齊@elem。非常感謝 – daydreamer
爲什麼filterNot(),它只能使用filter來實現。 'arr.filter(_> 0)++ arr.filter(_ <= 0)' –