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()