gpt4 book ai didi

scala - 如何一次匹配选项映射值?

转载 作者:行者123 更新时间:2023-12-04 16:54:17 24 4
gpt4 key购买 nike

是否可以匹配 Option[Map[String,String]]一次获取某个键(例如,没有嵌套匹配)?

以下代码段是现在的样子:

val myOption:Option[Map[String,String]] = ...
myOption match {
case Some(params) =>
params get(key) match {
case Some(value) => Ok(value)
case None => BadRequest
case None => BadRequest
}

最佳答案

当然!刚刚 flatMap that sh*t !

def lookup(o: Option[Map[String, String]], k: String) =
o.flatMap(_ get k).map(Ok(_)).getOrElse(BadRequest)

如果您使用的是 Scala 2.10,您可以折叠 Option :
def lookup(o: Option[Map[String, String]], k: String) =
o.flatMap(_ get k).fold(BadRequest)(Ok(_))

关于scala - 如何一次匹配选项映射值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12301804/

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