Я знаю, что здесь есть много подобных вопросов. Но, похоже, это не обсуждалось ранее.Iterator vs For-Each
В общем, я хочу знать, почему Iterator следует использовать по циклу For-Each, если ни один элемент не будет удален? Итак, в основном просто перебираем по Collection
, и единственным используемым модификатором является add
.
Я знаю, что Iterator
является единственным вариантом сохранения, если элемент удален из Collection
. Производительность не является аргументом, потому что For-Each
будет преобразован в Итератор компилятором. Iterator
более подробный, поэтому +1 до For-Each
.
Есть ли какая-либо надежная точка для использования Iterator over For-Every в описанном сценарии?
Я не могу придумать каких-либо веских оснований, поскольку они по сути одно и то же. Я просто думаю, что для каждого выглядит лучше и легче читать. – user489041
Я предполагаю, что для foreach вы имеете в виду 'for (Object o: yourCollection)'? В этом случае вы должны быть осторожны с «ConcurrentModificationException» – Tgsmith61591
@ Tgsmith61591 * «если элемент не будет удален» * – m0skit0