Extrait du deuxième élément tuple dans la liste de tuples
J'ai une Carte où chaque valeur est une liste de Tuples, tels que:
List(('a',1), ('b', 4), ('c', 3)....)
ce qui est le plus scala-thonic moyen de modifier chaque valeur est toujours une Liste, mais c'est seulement le deuxième élément de chaque Tuple
List(1,4,3)
J'ai essayé
myMap.mapValues(x => x._2)
Et je reçois
error: value _2 is not a member of List[(Char, Integer)]
des conseils?
OriginalL'auteur More Than Five | 2013-05-05
Vous devez vous connecter pour publier un commentaire.
Essayez ceci:
La valeur passée à
mapValues
est unList[(Char,Integer)]
, de sorte que vous avez plus de carte que le deuxième élément du tuple.OriginalL'auteur cmbaxter
Serait travailler pour vous?
OriginalL'auteur Chengye Zhao
Noter que mapValues() renvoie une vue sur myMap. Si myMap est mutable et est modifié, les modifications correspondantes apparaissent dans la carte retournée par mapValues. Si vous ne voulez vraiment pas votre carte d'origine après la transformation, vous pouvez utiliser la carte() au lieu de mapValues():
OriginalL'auteur trenobus
Un autre moyen est d'utiliser
unzip
qui transforme une liste de tuples dans un tuple de listes. Il est particulièrement utile si vous voulez vraiment les deux valeurs à partir de la n-uplets.OriginalL'auteur henko