Поиск…


Вступление

Выражения диапазона формируются с помощью функций rangeTo, которые имеют операторную форму, которая дополняется in и! In. Диапазон определен для любого сопоставимого типа, но для интегральных примитивных типов он имеет оптимизированную реализацию

Интегральные диапазоны типов

Диапазоны интегрального типа (IntRange, LongRange, CharRange) имеют дополнительную функцию: их можно повторить. Компилятор позаботится о преобразовании этого аналогично в индексированный для Java цикл, без дополнительных накладных расходов

for (i in 1..4) print(i) // prints "1234"
for (i in 4..1) print(i) // prints nothing

Функция downTo ()

если вы хотите перебрать числа в обратном порядке? Это просто. Вы можете использовать функцию downTo (), определенную в стандартной библиотеке

for (i in 4 downTo 1) print(i) // prints "4321"

step ()

Можно ли перебирать числа с произвольным шагом, не равным 1? Конечно, функция step () поможет вам

for (i in 1..4 step 2) print(i) // prints "13"
for (i in 4 downTo 1 step 2) print(i) // prints "42"

пока функция

Чтобы создать диапазон, который не включает его конечный элемент, вы можете использовать функцию until:

for (i in 1 until 10) { // i in [1, 10), 10 is excluded
println(i)
}


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow