Вы спрашиваете конкретно о производительности?
В этом случае ответ зависит от того, насколько быстрым является итератор коллекции : если Next()
дорогая операция для этого конкретного итератора, то вы платите эту стоимость N раз в первой версии и 3N раз в последнем. Это несущественно, если ваша коллекция является векторной, но более серьезной, если ваша коллекция является, скажем, интерфейсом для некоторой медленной операции ввода-вывода файла.