Collections Scala - ListMap

La carte Scala est une collection de paires clé / valeur. Toute valeur peut être récupérée en fonction de sa clé. Les clés sont uniques dans la carte, mais les valeurs n'ont pas besoin d'être uniques. ListMap implémente une carte immuable et utilise list pour l'implémenter. Il est utilisé avec un petit nombre d'éléments.

Déclaration des variables ListMap

Voici la syntaxe pour déclarer une variable ListMap.

Syntaxe

val colors = ListMap("red" -> "#FF0000", "azure" -> "#F0FFFF", "peru" -> "#CD853F")

Ici, les couleurs sont déclarées comme un hash-map de Strings, Int qui a trois paires clé-valeur. Les valeurs peuvent être ajoutées en utilisant des commandes comme les suivantes -

Commander

var myMap1: ListMap[Char, Int] = colors + ("black" -> "#000000");

Traitement ListMap

Vous trouverez ci-dessous un exemple de programme montrant comment créer, initialiser et traiter ListMap -

Exemple

import scala.collection.immutable.ListMap

object Demo {
   def main(args: Array[String]) = {
      var myMap: ListMap[String,String] = ListMap(
         "red" -> "#FF0000", "azure" -> "#F0FFFF", "peru" -> "#CD853F"
      );
      // Add an element
      var myMap1: ListMap[String,String] = myMap + ("white" -> "#FFFFFF");
      // Print key values
      myMap.keys.foreach{ 
         i =>  
         print( "Key = " + i )
         println(" Value = " + myMap(i) ) 
      }
      if( myMap.contains( "red" )) {
         println("Red key exists with value :"  + myMap("red"))
      } else {
         println("Red key does not exist")
      }
      if( myMap.contains( "maroon" )) {
         println("Maroon key exists with value :"  + myMap("maroon"))
      } else {
         println("Maroon key does not exist")
      }
      //removing element
      var myMap2: ListMap[String,String] = myMap - ("white");
      // Create empty map
      var myMap3: ListMap[String,String] = ListMap.empty[String, String];
      println(myMap1);
      println(myMap2);	
      println(myMap3);		  
   }
}

Enregistrez le programme ci-dessus dans Demo.scala. Les commandes suivantes sont utilisées pour compiler et exécuter ce programme.

Commander

\>scalac Demo.scala
\>scala Demo

Production

Key = red Value = #FF0000
Key = azure Value = #F0FFFF
Key = peru Value = #CD853F
Red key exists with value :#FF0000
Maroon key does not exist
ListMap(red -> #FF0000, azure -> #F0FFFF, peru -> #CD853F, white -> #FFFFFF)
ListMap(red -> #FF0000, azure -> #F0FFFF, peru -> #CD853F)
ListMap()