Scala: à l'Aide de table de hachage avec une valeur par défaut

J'ai une mutable HashMap et que vous souhaitez l'utiliser comme un défaut dans le dictionnaire. L'évidence de la méthode semble être d'utiliser getOrElse et de fournir la valeur par défaut à chaque fois comme une deuxième valeur. Toutefois, cela semble un peu inélégant dans mon cas d'utilisation comme la valeur par défaut ne change pas.

var x = HashMap(1 -> "b", 2 -> "a", 3 -> "c")

println(x.getOrElse(4, "_")
println(x.getOrElse(5, "_"))
//And so on...
println(x.getOrElse(10, "_"))

Est-il possible de créer une table de hachage (ou de catégorie similaire), telles que les tentatives d'accès non défini touches renvoie une valeur par défaut définie sur la création de la table de hachage? Je remarque que la table de hachage.par défaut est mise à lancer une exception, mais je me demande si cela peut être changé...

  • Pour n'importe qui qui bute sur cette question, missingfaktor post affirme à juste titre que "la Scala 2.9.1. mutable.La carte est livrée avec un withDefaultValue méthode"
InformationsquelleAutor | 2010-09-06