Hey, j'essaie de couper chaque élément de chaîne d'une liste dans Groovy mais cela ne fonctionne que dans la fermeture, dans la liste Les chaînes sont toujours "foo", "bar" et "groovy". p> Comment puis-je atteindre cela? p> p>
5 Réponses :
list = list.collect { it.trim() }
list = list.collect {it.trim ()} ty
Droite, ne peut pas laisser des parens avec des méthodes sans paramètres. Fixé.
Une solution fantastique et bien rangée. Très appréciée. Signifiait que je pourrais faire quelque chose comme ceci: articles = vueDefinition.findallallByIdinlist (paramoses.id.split ("-"). Collec T {IT TERME})
Selon le Groovy Quick Démarrage , en utilisant Voici un petit exemple en utilisant la coque Groovy: P> Collect code> Recueillir les valeurs renvoyées à partir de la fermeture.
groovy:000> ["a ", " b"].collect { it.trim() }
===> [a, b]
@ sepp2k je pense que cela fonctionne dans Ruby P>
Et cela fonctionne à Groovy list = list.collect () {it.trim (); } p>
Vous pouvez également utiliser l'opérateur de propagation:
def list = [" foo", "bar ", " groovy "] list = list*.trim() assert "foo" == list[0] assert "bar" == list[1] assert "groovy" == list[2]
Si vous avez vraiment dû modifier la liste en place, vous pouvez utiliser list.echewithIdex {item, IDX -> Liste [IDX] = élément.trim ()}. P>
collection () est bien meilleur. P>