我想知道如何以最佳功能方式使用隊列。例如,我想將元素出列並用遞歸函數打印出來。 我想要最美的功能。使用scala不可變隊列的最佳實踐隊列
例如,這是一個做我想做的功能。但我不喜歡如果。
他們是使用隊列的更好方法嗎?
import scala.collection.immutable.Queue
def printQ[A](p:Queue[A]) {
if(!p.isEmpty) {
p.dequeue match {
case (x,xs) =>
println(x.toString)
printQ(xs)
case _ =>
println("End")
}
}
}
printQ(Queue(1,2,4,5))
感謝您的回覆。
除隊列不按順序迭代。無論如何,他們並不一定如此。 – 2012-04-05 13:40:30
@ DanielC.Sobral - 授予; order-sameness是'immutable.Queue'的一個未記錄的特徵。 – 2012-04-05 13:48:23
'!p.isEmpty'可以替換爲'p.nonEmpty'。它更加優雅;) – metch 2014-11-19 10:51:36