5.13. Цикл for

По материалам официального руководства по Haxe 3

Haxe не поддерживает традиционные циклы $for$ из языка C. Здесь ключевое слово $for$ предполагает следующий синтаксис: вначале идет открывающая скобка $($, затем идентификатор переменной, ключевое слово $in$ и произвольное выражение, используемое в качестве итерационной коллекции. После закрывающей скобки $)$ следует тело цикла.

Программист при написании кода гарантирует, что тип $e1$ является итерируемым. Обычно это происходит в случае, если он содержит метод типа $iterator$, возвращающий $Iterator<T>$, или если он сам — $Iterator<T>$.

Переменная $v$ доступна внутри тела цикла $e2$ и хранит значения отдельных элементов коллекции $e1$.

У Haxe есть специальный оператор диапазона для итерации в пределах интервалов. Это бинарный оператор, который получает на вход два операнда типа $Int$: $min…max$, который возвращает экземпляр $IntIterator$, который итерирует от $min$ (включительно) до $max$ (не включительно). Отметим, что $max$ не должен быть меньше $min$.

Тип выражения $for$ — всегда $Void$, что означает, что оно не имеет собственного значения и не может быть использовано в качестве правой части выражения.

На управляющий поток цикла можно повлиять при помощи выражений $break$ и $continue$.

В общем, можно сказать, что цикл $for$ в Haxe напоминает циклы $foreach$ в некоторых других языках.

Пример: Программа, которая вычисляет и выводит значения $2^i$, где $i$ изменяется от 1 до 20.

Протестировать код можно здесь: Try Haxe !

Добавить комментарий