ArrayList
's iterador de la lista no poner en práctica el método remove, sin embargo, me sale el siguiente excepción lanzada: UnsupportedOperationException en java.util.AbstractList.remove (AbstractList.java:144)UnsupportedOperationException en AbstractList.remove() al operar en ArrayList
Por este código:
protected void removeZeroLengthStringsFrom(List<String> stringList)
{
ListIterator<String> iter = stringList.listIterator();
String s;
while (iter.hasNext())
{
s = iter.next();
if (s.length() == 0)
{
iter.remove();
}
}
}
Qué me estoy perdiendo aquí? He verificado que el List<String>
que estoy pasando son de hecho ArrayList<String>
.
Gracias!
¿Hay más de un subproceso operativo en la misma 'Lista'? –
Sugiero que verifique que el tipo de tiempo de ejecución de 'stringList' es _really_ de tipo java.util.ArrayList. Sospecho que puede tener un 'Vector' o' Stack' o un 'ArrayList' de algún paquete diferente que no anule' remove (int) '. –
¿Cómo lo verificaste? ¿Has examinado directamente 'stringList.getClass()' dentro de 'removeZeroLengthStringsFrom()', etc.? – QuantumMechanic