UnsupportedOperationException dans AbstractList.remove() lors de l'utilisation de ArrayList

ArrayListliste de l'itérateur n'mettre en œuvre la méthode remove, cependant, j'ai le exception levée:

UnsupportedOperationException at java.util.AbstractList.remove(AbstractList.java:144)

Par ce code:

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();
        }
    }
}

Ce qui me manque ici? J'ai vérifié que le List<String> je suis de passage dans le pays sont en effet ArrayList<String>.

Merci!

  • est plus qu'à un fil fonctionnant sur la même List<String>?
  • Je vous suggère de vérifier que l'exécution de type de stringList est vraiment de type java.util.Liste de tableaux. Je soupçonne que vous pourriez avoir soit un Vector ou Stack ou un ArrayList de certains forfaits différents qui ne remplace pas remove(int).
  • Comment avez-vous le vérifier? Avez-vous examiner directement stringList.getClass() dans removeZeroLengthStringsFrom(), etc.?
InformationsquelleAutor bguiz | 2011-06-07