¿Existe una forma maravillosa de eliminar un elemento de la colección mientras se itera? En Java esto se logra utilizando Iterator.remove()
:Groovy remove Artículo de la colección al iterar
Collection collection = ...
for (Iterator it=collection.iterator(); it.hasNext();) {
Object obj = it.next();
if (should remove) {
it.remove();
}
}
¿El maravilloso proporcionar quitar mientras está iterando en su sintaxis del lenguaje, o tengo que hacer Usa Iterator.remove()
?
Muy bueno! No sabía acerca de .removeAll {} –
@JarredOlson. Si es nuevo en Groovy, le sugiero que se abstenga de realizar bucles manuales basados en iteradores (o 'para ()' para bucles). Con métodos basados en el cierre como 'each',' collect', 'findAll', etc. Nunca he tenido la necesidad de usar iteradores explícitos en Groovy, y eso ha sido un gran alivio = D –
epidemian
@epidemian No soy nuevo, simplemente no sabía acerca de .removeAll {} y simplemente pensé que era genial :) Sin embargo, me haría eco de sus afirmaciones en el sentido de que usar los métodos de Collection es una muy buena manera de familiarizarse con los cierres/Groovy. –