Часть 3 : Циклы и исключения в Kotlin


Мотивация

Эта статья написана для более продвинутых разработчиков, которые хотят быстро освоить язык Kotlin для работы или для интересных проектов.

В этой статье мы рассмотрим циклы и исключения и то, как их лучше использовать. Это часть 3 из более длинного цикла статей.

Часть 1 : Начало работы с Kotlin
Часть 2 : Поток управления в Kotlin
Часть 3 : Циклы и исключения в Kotlin
Часть 4 : Работа с типами в Kotlin (скоро будет)

Циклы While

Циклы While имеют следующий общий синтаксис

while (Boolean Expression is true){
   //Perform some action
}
Вход в полноэкранный режим Выход из полноэкранного режима

На каждой итерации Kotlin проверяет, истинно ли еще булево выражение. Если оно истинно, то продолжается итерация блока.

Примечание: Это означает, что если ваше условие не истинно, то цикл никогда не выполнится.

Пример этого мы можем увидеть ниже

fun main(){
    val repetitions = 10;
    var counter = 0
    while(counter < repetitions){
        println("Counter : $counter ")
        counter++
    }
}
Вход в полноэкранный режим Выйти из полноэкранного режима

что дает нам вывод

Counter : 0 
Counter : 1 
Counter : 2 
Counter : 3 
Counter : 4 
Counter : 5 
Counter : 6 
Counter : 7 
Counter : 8 
Counter : 9 
Войти в полноэкранный режим Выйти из полноэкранного режима

Do-While

Если вы хотите, чтобы ваш цикл выполнялся хотя бы один раз, то вам, скорее всего, подойдет цикл do-while.

do{
  // Perform some action
} while(Boolean Expression is true)
Вход в полноэкранный режим Выйти из полноэкранного режима

Мы можем переписать приведенный выше цикл while в цикл do-while следующим образом

fun main(){
    val repetitions = 10;
    var counter = 0
    do{
        println("Counter : $counter ")
        counter++
    }while(counter < repetitions)
}
Вход в полноэкранный режим Выйти из полноэкранного режима

Примечание: Это означает, что если ваше условие не истинно, то цикл выполнится хотя бы один раз.

Мы можем проверить, что наш цикл do while выполняется хотя бы один раз, используя приведенный ниже фрагмент кода

fun main(){
    val condition = false
    do{
        println("Loop Ran")
    }while(condition)
}
Вход в полноэкранный режим Выход из полноэкранного режима

Циклы For-Loops

Мы также можем использовать For-Loops, если у нас есть известное количество итераций, за которое мы хотим выполнить наши блоки кода.

Общий синтаксис таков

for(x in something){
  //Do Something
}
Войти в полноэкранный режим Выйти из полноэкранного режима

Существует два основных способа работы с циклами for — использование repeat или ranges.

Повторять

Вызов функции repeat позволяет нам выполнять действие заданное количество раз.

fun main(){
    repeat(3){
        println("Loop Ran")
    }
}
Войти в полноэкранный режим Выйти из полноэкранного режима

Что дает результат

Loop Ran
Loop Ran
Loop Ran
Войти в полноэкранный режим Выйти из полноэкранного режима

Диапазоны

Ниже мы можем увидеть более конкретный пример использования диапазонов с

fun main(){
    val range = 3..5
    for(i in range){
        println(i)
    }
}
Ввести полноэкранный режим Выйти из полноэкранного режима

Примечание: 3..5 — это сокращенный синтаксис, который мы используем для создания диапазона. Поэтому в данном случае 3..5 эквивалентен диапазону со значениями 3,4,5.

Мы можем генерировать один и тот же диапазон разными способами, как показано ниже

3..5 
3 until 5 
3..5 step 1
Войти в полноэкранный режим Выход из полноэкранного режима

Мы также можем генерировать диапазоны в обратном направлении (например, 5,4,3).

5 downTo 3 step 1
Войти в полноэкранный режим Выход из полноэкранного режима

Примечание: Диапазоны могут также использоваться для символов (например, «a», «b», «c», которые могут быть сгенерированы 'a'...'c').

Оцените статью
devanswers.ru
Добавить комментарий