Я пытаюсь сделать несколько примеров программ на scala, чтобы лучше познакомиться с языком. Для этого я пытаюсь повторно реализовать некоторые встроенные методы в Haskell. Большинство этих методов, я уверен, также реализованы в Скала тоже, но это только для моей практики. Я думаю, что могу опубликовать некоторые фрагменты кода (не все), чтобы получить лучший способ сделать что-то и проверить мое понимание scala. Поэтому, пожалуйста, дайте мне знать, если это не то место, где можно делать такие вещи.
Вот моя реализация scala для получения последнего элемента любого списка. Является ли это правильным способом сделать, используя Any
, я теряю тип объекта, содержащегося в списке? Так ли это реализовано в Scala?
def getLast(xs: List[Any]): Any = xs match {
case List() => null
case x :: List() => x
case _ :: ys => getLast(ys)
}