En Scala, el mapa es lo mismo que el diccionario que contiene pares clave:valor. En este artículo, aprenderemos cómo invertir las claves y los valores en un mapa dado en Scala. Después de invertir los pares, las claves se convertirán en valores y los valores se convertirán en claves. Podemos invertir las claves y valores de un mapa con un Scala for-comprehension . Las claves deben ser únicas para invertir estos valores, de lo contrario, podemos perder algo de contenido.
Sintaxis:
val reverseMap = for ((k,v) <- map) yield (v, k)
A continuación se muestra el ejemplo para invertir claves y valores en Scala Map.
Ejemplo 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) } }
Producción:
Map(geeks -> 3, for -> 4, cs -> 2)
Ejemplo #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) } }
Producción:
Map(30 -> Ajay, 20 -> Bhavesh, 50 -> Charlie)