我想在斯卡拉做一些示例程序,以获得更熟悉的语言,为此,我试图重新实现一些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