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

可选择将项目添加到Scala Map

发布时间:2020-12-16 09:39:54 所属栏目:安全 来源:网络整理
导读:我正在寻找一个习惯的解决方案来解决这个问题。 我正在构建一个val Scala(不可变)地图,并且可以选择添加一个或多个项目: val aMap = Map(key1 - value1,key2 - value2,(if (condition) (key3 - value3) else ???)) 如何使用var?什么应该代替????使用运算
我正在寻找一个习惯的解决方案来解决这个问题。

我正在构建一个val Scala(不可变)地图,并且可以选择添加一个或多个项目:

val aMap =
  Map(key1 -> value1,key2 -> value2,(if (condition) (key3 -> value3) else ???))

如何使用var?什么应该代替????使用运算符最好吗?

val aMap =
  Map(key1 -> value1,key2 -> value2) +
  (if (condition) (key3 -> value3) else ???))

一个可能的解决方案是:

val aMap =
  Map(key1 -> value1,(if (condition) (key3 -> value3) else (null,null))).filter {
        case (k,v) => k != null && v != null
      }

这是最好的方法吗?

解决方法

沿线的东西怎么样

val optional = if(condition) Seq((key3 -> value3)) else Nil
val entities = Seq(key1 -> value1,key2 -> value2) ++ optional
val aMap = Map(entities:_*)

(编辑:李大同)

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

    推荐文章
      热点阅读