Calling remove in foreach loop in Java [duplicate]

To pytanie ma już odpowiedź tutaj:

Iterowanie przez kolekcję, unikając ConcurrentModificationException podczas usuwania obiektów w pętli 23 odpowiedzi

W języku Java, czy dozwolone jest wywoływanie operacji usuwania w kolekcji podczas iteracji w kolekcji za pomocą pętli foreach? Na przykład

List<String> names = ....
for (String name : names) {
   // Do something
   names.remove(name).
}

Czy jako dodatek można usuwać elementy, które nie zostały jeszcze powtórzone? Na przykład

//Assume that the names list as duplicate entries
List<String> names = ....
for (String name : names) {
    // Do something
    while (names.remove(name));
}

questionAnswers(11)

yourAnswerToTheQuestion