Моя обычная политика состоит в том, чтобы иметь только один оператор возврата в конце функции, если сложность кода значительно не уменьшается путем добавления больше. На самом деле я - скорее поклонник Eiffel, который осуществляет единственное правило возврата при наличии никакого оператора возврата (существует только автосозданная переменная 'результата', чтобы вставить Ваш результат).
, конечно, существует случаи, где код может быть сделан более ясным с несколькими возвратами, чем очевидная версия без них была бы. Можно было утверждать, что больше переделывает, необходим, если у Вас есть функция, которая слишком сложна, чтобы быть понятной без нескольких операторов возврата, но иногда хорошо быть прагматичным о таких вещах.
Со страницы документации Adobe ]:
В результате ограничений у Vector есть два основных преимущества перед экземпляром Array, все элементы которого являются экземплярами одного класса:
Pro: Vector is faster than Array - e.g. see this: Faster JPEG Encoding with Flash Player 10
Contra: Vector requires FP10, and according to http://riastats.com/ some 20% of users are still using FP9
Согласно flash Проникновение игроков на сайт немного выше. Около 85%
Векторы быстрее. Хотя для последовательной итерации самым быстрым кажется использование связанных списков .
Векторы также могут быть полезны для операций с растровыми изображениями (проверьте BitmapData.setVector, а также BitmapData.lock и разблокируйте).
Пример связанного списка, упомянутый ранее в комментариях, написан неправильно, хотя он пропускает нечетные узлы и из-за этого выполняет итерацию только половины тех же данных. Неудивительно, что он получает такие отличные результаты, может быть и быстрее с правильным кодом, но не такая же разница в%. Цикл устанавливает current = current.next на один раз слишком много (как в цикле, так и в качестве условия цикла) на каждой итерации, которая вызывает такое поведение.