2010-10-10 8 views
29

Quelle est la syntaxe pour définir le contenu hashmap immuable à l'initialisation?Comment initialiser une hashmap immutable Scala avec des valeurs?

Par exemple, si j'étais prêt à hardcode un tableau, je vous écris:

val = Array (0, 1, 2, 3)

Quel est l'analogue pour hashmaps immuables (disons que je veux qu'il contienne 0-> 1 et 2-> 3 paires) (en Scala 2.8)?

Répondre

52

Voulez-vous dire quelque chose comme ça?


scala> val m = collection.immutable.HashMap(0 -> 1, 2 -> 3) 
m: scala.collection.immutable.HashMap[Int,Int] = Map((0,1), (2,3)) 

scala> m.get(0) 
res0: Option[Int] = Some(1) 

scala> m.get(2) 
res1: Option[Int] = Some(3) 

scala> m.get(1) 
res2: Option[Int] = None 
+0

Cela ne fonctionne pas pour moi. voir ma réponse – Paul

5

Pour créer d'une collection (souvenez-vous de ne pas avoir un mot-clé new)

val result: HashMap[Int, Int] = HashMap(myCollection: _*) 
Questions connexes