Каждый имеет свои преимущества и недостатки.Использование метода iterator () и Java 8 forEachRemaining () в действительности не отличается от простого forEach () в самом наборе, но требует вызова еще одного метода.
Использование forEach () в наборе сЛямбда-выражения хороши, если вы хотите один простой вызов метода для каждой части в наборе.
for (T item: someSet) {} будет чище, если вы делаете много вещей для каждой части, или еслиЕсть вещи, которые вы делаете с ними, есть побочные эффекты.
, если побочных эффектов нет, но давайте предположим, что вы хотите найти определенное свойство или набор определенных свойств в наборе, ярекомендую использовать Stream API, где вы можете фильтровать (), отображать (), находить или собирать данные для других типов коллекций.
Все, что вы используете, в основном зависит от того, что вам лично нравится.Разные способы могут быть действительно разными в реализации, но в большинстве случаев они могут делать одно и то же.Это в основном сводится к вкусу или стандартам в команде