2010-10-10 14 views
29

¿Cuál es la sintaxis para establecer los contenidos de hashmap inmutables en la inicialización?¿Cómo inicializar un hashmap inmutable de Scala con valores?

Por ejemplo, si yo estaba dispuesto a codificar una matriz, que escribiría:

val a = array (0, 1, 2, 3)

Cuál es el análogo de hashmaps inmutables (digamos que quiero que contenga 0-> 1 y 2-> 3 pares) (en Scala 2.8)?

Respuesta

52

¿Te refieres a algo como esto?


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

Esto no funciona para mí. ver mi respuesta – Paul

5

Para crear a partir de una colección (recuerde no tiene una palabra clave new)

val result: HashMap[Int, Int] = HashMap(myCollection: _*) 
Cuestiones relacionadas