gpt4 book ai didi

scala - 只有某些键的映射

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

关于 Scala 中的 map ,如果 ms - (k, 1, m)返回包含 ms 的所有映射的映射除了 对于具有给定键 x、1 和 m 的任何映射。

那么,什么语句将返回 ms 与 的所有映射的映射。只有给定的键 x、1 和 m。即我正在寻找 ms 的子集,其中只有 k、1 和 m 是键。

这有效,但很糟糕:

scala> val originalMap = Map("age" -> "20", "name" -> "jack", "hobby" -> "jumping")
ms: scala.collection.immutable.Map[java.lang.String,java.lang.String] = Map(age -> 20, name -> jack, hobby -> jumping)

scala> val interestingKeys = List("name", "hobby")
interesting: List[java.lang.String] = List(name, hobby)

scala> val notInterestingMap = originalMap -- interestingKeys
notInterestingMap: scala.collection.immutable.Map[java.lang.String,java.lang.String] = Map(age -> 20)

scala> val interestingMap = originalMap -- notInterestingMap.keySet
interestingMap: scala.collection.immutable.Map[java.lang.String,java.lang.String] = Map(name -> jack, hobby -> jumping)

最佳答案

filterKeys可以帮助:

scala> originalMap.filterKeys(interestingKeys.contains)
res0: scala.collection.immutable.Map[java.lang.String,java.lang.String] = Map(name -> jack, hobby -> jumping)

关于scala - 只有某些键的映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9292978/

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