J'ai des problèmes avec l'écriture d'une application spécifique d'une manière scala-esque et élégante. J'ai essayé depuis un certain temps, mais je ne peux pas trouver une « bonne » solution à ce problème:Itérer sur une liste, retourner le courant, le suivant et l'élément avant le courant
Étant donné que je la liste suivante:
List("foo", "bar", "baz", "blah")
Je veux itérer sur cette liste, non seulement en me donnant l'élément courant pour chaque itération mais aussi l'élément avant et après l'élément courant. Cela pourrait être un Tuple3 mais n'est pas nécessaire. Cela pourrait être la signature Tuple:
(Option[T], T, Option[T])
Pour clarifier ce que je veux dire, c'est le Tuple proposé pour chaque itération sur une List[String]
, qui se termine après le quatrième.
Iteration 1: (None, "foo", Some("bar"))
Iteration 2: (Some("foo"), "bar", Some("baz"))
Iteration 3: (Some("bar"), "baz", Some("blah"))
Iteration 4: (Some("baz"), "blah", None)
Comment pourrais-je obtenir un tel résultat? Encore une fois: je ne suis pas lié au Tuple3, toute autre solution est également très appréciée!
Merci!
Je suis sûr que cela fonctionne, mais ma version de Scala ne semble pas avoir glissé défini. J'utilise 2.8.0.Beta1-RC7, quelle version est nécessaire d'utiliser glisser? – Malax
J'utilise 2.8.0.Beta1-RC8 – retronym
Semble que RC8 est nécessaire, fonctionne maintenant. Je vous remercie! :-) – Malax