从 Option 内的对象中提取默认字段值

Man*_*oid 0 scala

我有一个 A 类,它包含一个 B 类的选项(比如 b),它可以是 None。B 里面有一个字符串值(比如 str),我需要提取它,它的默认值是一个空字符串。所以基本上如果 b 是 None,我需要得到空字符串。

a.b.getOrElse(B).str
Run Code Online (Sandbox Code Playgroud)

所以,在这里我需要创建一个 B 的实例。这可以避免吗?

Yuv*_*kov 5

是的

val res = a.b.map(_.str).getOrElse("")
Run Code Online (Sandbox Code Playgroud)