gpt4 book ai didi

scala - 为什么在Scala中没有tailOption?

转载 作者:行者123 更新时间:2023-12-04 17:31:38 27 4
gpt4 key购买 nike

如果存在tailOption,为什么在Scala中没有headOption

这是一个old问题,在Google上找不到答案。

最佳答案

不需要tailOption。如果您想要一个功能类似于tail的功能。但是在用于空集合时返回空集合,则可以使用drop(1)。当我要创建对列表时要优雅地处理空集合时,经常使用此方法:

s zip s.drop(1)

如果要在空集合上使用 None,而在非​​空集合上使用 Some(tail),则可以使用:
s.headOption.map(_ => s.tail)

或(如果您不介意引发和捕获异常,这可能会慢一些):
Try {s.tail}.toOption

但是,我几乎无法想象其他选项的合理用例。

关于scala - 为什么在Scala中没有tailOption?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42858306/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com