У цьому підручнику ви навчитеся використовувати break для завершення циклу. Крім того, ви також дізнаєтеся про ярлики розривів.
Припустимо, ви працюєте з петлями. Іноді бажано негайно завершити цикл, не перевіряючи тестовий вираз.
У такому випадку break
використовується. Він закінчує найближчий цикл обгородження при зустрічі (без перевірки випробувального виразу). Це схоже на те, як в Java працює оператор break.
Як працює перерва?
Він майже завжди використовується з конструкцією if … else. Наприклад,
для (…) (якщо (testExpression) (перерва))
Якщо testExpression оцінюється як true
, break
виконується, що завершує for
цикл.
Приклад: перерва Котліна
fun main(args: Array) ( for (i in 1… 10) ( if (i == 5) ( break ) println(i) ) )
Коли ви запускаєте програму, результат буде:
1 2 3 4
Коли значення i дорівнює 5, вираз i == 5
усередині if
обчислюється true
і break
виконується. Це завершує цикл for.
Приклад: Обчислювати суму, поки користувач не введе 0
Програма нижче обчислює суму чисел, введених користувачем, поки користувач не введе 0.
Відвідайте Kotlin Basic Input Output, щоб дізнатися більше про те, як отримувати введення від користувача.
fun main(args: Array) ( var sum = 0 var number: Int while (true) ( print("Enter a number: ") number = readLine()!!.toInt() if (number == 0) break sum += number ) print("sum = $sum") )
Коли ви запускаєте програму, результат буде:
Введіть число: 4 Введіть число: 12 Введіть число: 6 Введіть число: -9 Введіть число: 0 сума = 13
У наведеній вище програмі тестовий вираз while
циклу завжди true
.
Тут while
цикл працює, поки користувач не вводить 0. Коли користувач вводить 0, break
виконується while
цикл, який завершує цикл.
Котлін Позначений перервою
Те, що ви дізналися дотепер, - це не маркована форма break
, яка закінчує найближчий замкнутий цикл. Існує ще один спосіб, який break
можна використовувати (позначена формою) для завершення бажаного циклу (може бути зовнішнім циклом).
Як працює позначена перерва?
Мітка в Kotlin починається з ідентифікатора, за яким слідує @
.
Тут test @ - це мітка, позначена на зовнішній петлі while. Тепер, використовуючи break
з міткою ( break@test
у цьому випадку), ви можете розірвати певний цикл.
Ось приклад:
fun main(args: Array) ( first@ for (i in 1… 4) ( second@ for (j in 1… 2) ( println("i = $i; j = $j") if (i == 2) break@first ) ) )
Коли ви запускаєте програму, результат буде:
i = 1; j = 1 i = 1; j = 2 i = 2; j = 1
Тут, коли i == 2
обчислюється вираз true
, break@first
виконується, що завершує цикл, позначений міткою first@
.
Ось невеликий варіант вищезазначеної програми.
У наведеній нижче програмі break припиняє цикл, позначений міткою @second.
fun main(args: Array) ( first@ for (i in 1… 4) ( second@ for (j in 1… 2) ( println("i = $i; j = $j") if (i == 2) break@second ) ) )
Коли ви запускаєте програму, результат буде:
i = 1; j = 1 i = 1; j = 2 i = 2; j = 1 i = 3; j = 1 i = 3; j = 2 i = 4; j = 1 i = 4; j = 2
Примітка: Оскільки, break
використовується для завершення внутрішнього циклу в цій програмі, в цьому випадку не потрібно використовувати мітку break.
Є 3 структурні вирази стрибка в Котлин: break
, continue
і return
. Щоб дізнатись про висловлювання continue
та return
висловити їх, відвідайте:
- Котлін продовжувати
- Функція Котліна