加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Scala案例匹配默认值

发布时间:2020-12-16 09:40:12 所属栏目:安全 来源:网络整理
导读:如何在匹配的情况下获取默认值? //Just an example,this value is usually not knownval something: String = "value"something match { case "val" = "default" case _ = smth(_) //need to reference the value here - doesn't work} 更新:我看到我的问
如何在匹配的情况下获取默认值?

//Just an example,this value is usually not known
val something: String = "value"

something match {
    case "val" => "default"
    case _ => smth(_) //need to reference the value here - doesn't work
}

更新:我看到我的问题没有真正理解,这就是为什么我显示一个更接近我正在做的事情的例子:

val db =    current.configuration.getList("instance").get.unwrapped()
            .map(f => f.asInstanceOf[java.util.HashMap[String,String]].toMap)
            .find(el => el("url").contains(referer))
            .getOrElse(Map("config" -> ""))
            .get("config").get match {
                case "" => current.configuration.getString("database").getOrElse("defaultDatabase")
                case _  => doSomethingWithDefault(_)
            }

解决方法

something match {
    case "val" => "default"
    case default => smth(default)
}

它不是一个关键字,只是一个别名,所以这也将工作:

something match {
    case "val" => "default"
    case everythingElse => smth(everythingElse)
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读