In Scala, Map is same as dictionary which holds key:value pairs. In this article, we will learn how to reverse the keys and values in given Map in Scala. After reversing the pairs, keys will become values and values will become keys. We can reverse the keys and values of a map with a Scala for-comprehension. Keys should be unique for reverse these values otherwise we can lose some content.
Syntax:
Scala
Output:
Scala
Output:
val reverseMap = for ((k,v) <- map) yield (v, k)Below is the example to reverse keys and values in Scala Map. Example #1:
// Scala program to reverse keys and values
// Creating object
object GfG
{
// Main method
def main(args:Array[String])
{
// Creating a map
val m1 = Map(3 -> "geeks", 4 -> "for", 2 -> "cs")
// reversing key:value pairs
val reverse = for ((k, v) <- m1) yield (v, k)
// Displays output
println(reverse)
}
}
Map(geeks -> 3, for -> 4, cs -> 2)Example #2:
// Scala program to reverse keys and values
// Creating object
object GfG
{
// Main method
def main(args:Array[String])
{
// Creating a map
val mapIm = Map("Ajay" -> 30,
"Bhavesh" -> 20,
"Charlie" -> 50)
// Applying keySet method
val reverse = for ((k, v) <- mapIm) yield (v, k)
// Displays output
println(reverse)
}
}
Map(30 -> Ajay, 20 -> Bhavesh, 50 -> Charlie)