Scala集合:使用Set值从映射对象中查找键。

Scala集合:使用Set值从映射对象中查找键。,scala,dictionary,collections,set,Scala,Dictionary,Collections,Set,这是一个scala问题 我目前拥有以下两个collections对象: val keywordLookup = Map("a" -> "1111", "b" -> "2222", "c" -> "3333", "d" -> "4444", "e" -> "5555") val keywordList = Set("1111", "

这是一个scala问题

我目前拥有以下两个collections对象:

val keywordLookup = Map("a" -> "1111",
                 "b" -> "2222",
                 "c" -> "3333",
                 "d" -> "4444",
                 "e" -> "5555")

val keywordList = Set("1111", "3333")
关键字查找是一个查找对象。keywordList包含从keywordLookup对象查找ID所需的值列表

我希望得到以下结果:

Map("a" -> "1111", "c" -> "3333")

filtered
是使用
find
上的
flatMap
作为输出的
Map

keywordLookup.filter(x => keywordList.contains(x._2))
keywordList.flatMap (k => keywordLookup.find( _._2 == k)).toMap

另一个选项:keywordLookup.filter{case(key,value)=>keywordList.contains(value)}
keywordList.flatMap (k => keywordLookup.find( _._2 == k)).toMap