Scala - grouper les valeurs de la carte à la liste
J'ai de la suite de données d'entrée
((A, 1, 4), (A, 2, 5), (A, 3, 6))
Je voudrais produire le résultat suivant
(A, (1, 2, 3), (4, 5, 6))
par l'intermédiaire du regroupement d'entrée par des touches de
Quelle serait la bonne façon de le faire dans Scala?
- Pourriez-vous être un peu plus précis sur les types que vous êtes enceinte? Qu'est-ce que
A 1 4
? Des chaînes? Une chaîne et deux entiers? - Ce sont des listes (A, 1, 4)
- Qu'avez-vous essayé? Avez-vous un fonctionnement exemple que vous avez travaillé sur ce qui ne renvoie pas le résultat souhaité?
- sont-ils
List[List[Any]]
- vous dire? Ou unList[(String, Int, Int)]
(liste de tuples)? - Quelles sont les clés? Votre exemple n'a qu'une valeur de la clé si c'est "Une". Peut-il y avoir plus de touches? Un exemple plus complet permettrait de
Vous devez vous connecter pour publier un commentaire.
Dans le cas que cela représente un
List[(String, Int, Int)]
type essayez les solutions suivantes.Il en résultera une
Map[String,(List[Int], List[Int])]
, c'est à dire, une carte avec des clés de chaîne mappés à des tuples de deux listes.Essayer quelque chose comme cela:
Ce qui produit une Carte[toute,Toute] lorsqu'il est utilisé sur votre valeur... mais il devrait vous aider à aller dans la bonne direction.