的第一个元素是有没有办法改变只有列表的第一个元素没有做超级哈克是这样的:变换只有斯卡拉列表
val head = l1.head
val tail = l1.tail
val l2 = change(head) :: tail
updated()
看起来像它可以工作,但不多大的改善:
val head = l1.head
val l2 = l.update(0, change(head))
我喜欢这样的:
val l2 = l1.updateHead(change(_))
有类似的东西?
是'val l2 = change(l1.head):: l1.tail'真的是“super hacky”吗? – stew
也许不是,虽然每个人都提出了很多替代品,看起来更好。我认为罗伯特的模式匹配方法是最简单的。 – pr1001