有没有办法只转换列表的第一个元素而不做一些超级黑客的事情,比如:
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(_))
有这样的吗?