我想在斯卡拉做一些示例程序,以獲得更熟悉的語言,爲此,我試圖重新實現一些Haskell中內置的方法,這些方法大多數我當然也可以在Scala中實現,但這些只是爲了我的練習。我想我可以發佈一些代碼片段(不是所有的代碼片斷)來獲得更好的做事方式並驗證我對scala的理解。所以請讓我知道,如果這不是做這些事情的地方。斯卡拉執行哈斯克爾最後一個方法
這是我的scala實現獲取任何列表的最後一個元素。這是正確的做事方式,通過使用Any
我失去了包含在列表中的對象的類型?這是如何在scala中實現這種事情?
def getLast(xs: List[Any]): Any = xs match {
case List() => null
case x :: List() => x
case _ :: ys => getLast(ys)
}
他們是功能,而不是方法:D – 2010-02-16 01:42:15
@trinithis他們是方法。在Scala中,函數是來自'Function'的類後代的實例。 – 2010-02-16 08:24:56
它的措辭是指Haskell擁有方法,而不是Scala。 – 2010-02-17 03:13:58