假设你有一个 Option[A] 需要将其转换为 Some(b : B),如果为 None 并且转换为 None 如果是 Some(a : A)。 是否已经有现成的代码可以实现这个功能?我可以写一些代码,但最简单的方法是什么?
b
should be a plain value and doSome(b)
on the fold` - Luis Miguel Mejía Suárezdef f[A, B](s: Option[A], b: B) = s.fold(Some(b) : Option[B])(_ => None)
- galvas.fold(Option(b))(_ => None)
赢了。 - pedrofurlafold
的第二个参数列表期望一个从A => B的函数而不是一个普通值。您应该根据@pedrofurla的评论更新答案。 - haukeh