假设我需要在Scala中转换Option[Int]为Either[String, Int].我想这样做:
def foo(ox: Option[Int]): Either[String, Int] =
ox.fold(Left("No number")) {x => Right(x)}
Run Code Online (Sandbox Code Playgroud)
不幸的是上面的代码没有编译,我需要Either[String, Int]显式添加类型:
ox.fold(Left("No number"): Either[String, Int]) { x => Right(x) }
Run Code Online (Sandbox Code Playgroud)
是否可以在不添加类型的情况下转换Option为Either这种方式?
您如何建议转换Option为Either?