将 Some(List()) 变成 None
Turning Some(List()) into None
我有可选列表,例如:
val optionalEmptyList = Option(List[String]())
val optionalNonEmptyList = Option(List[String]("1","2"))
我想用 None 替换可选的空列表,同时保持可选的非空列表不变。
我想到了以下解决方案:
optionalEmptyList.flatMap(l => if (l.isEmpty) None else Option(l))
optionalNonEmptyList.flatMap(l => if (l.isEmpty) None else Option(l))
它有效但看起来很复杂。有没有更简单的解决方案?
optionalEmptyList.filter(_.nonEmpty)
我有可选列表,例如:
val optionalEmptyList = Option(List[String]())
val optionalNonEmptyList = Option(List[String]("1","2"))
我想用 None 替换可选的空列表,同时保持可选的非空列表不变。
我想到了以下解决方案:
optionalEmptyList.flatMap(l => if (l.isEmpty) None else Option(l))
optionalNonEmptyList.flatMap(l => if (l.isEmpty) None else Option(l))
它有效但看起来很复杂。有没有更简单的解决方案?
optionalEmptyList.filter(_.nonEmpty)