2012-07-06 12 views

risposta

13

Supponendo che è una lista di stringhe e si vuole tagliare ogni stringa, è possibile farlo utilizzando la spread operator (*.)

list = [" abc ", " xyz "] 
list*.trim() 
13

È possibile utilizzare il metodo di raccolta o l'operatore diffuse per creare una nuova lista con gli elementi tagliati:

def strs = ['a', ' b', ' '] 
assert strs.collect { it.trim() } == ['a', 'b', ''] 
assert strs*.trim() == ['a', 'b', ''] 

In questi casi, la lista originale non viene modificato. Se si desidera tagliare le stringhe in posizione, è necessario scorrere l'elenco con un indice:

for (i in 0..<strs.size()) { 
    strs[i] = strs[i].trim() 
} 
Problemi correlati