Kotlin с надписью продолжить

Kotlin с надписью продолжить

#Kotlin

В этой статье мы узнаем, как использовать continue в Kotlin. При работе с циклом в программировании иногда желательно пропустить текущую итерацию цикла. В этом случае мы можем использовать оператор continue в программе. В основном, используется для повторения цикла для определенного условия. Он пропускает следующие операторы и продолжает следующую итерацию цикла.


В Котлине есть два типа продолжения


  1. Немеченая Продолжить

2. Помечено Продолжить

Как мы знаем, продолжение без метки используется для пропуска итерации ближайшего замкнутого цикла, а пометка продолжения используется для пропуска итерации желаемого цикла закрытия. Это может быть с помощью меток, таких как inner@ , outer@ и т. Д. Нам просто нужно написать метку перед выражением и вызвать ее с помощью continue@abc .

Мы собираемся узнать, как использовать помеченный продолжить в while, do-while и for loop.

Использование помеченного продолжения в цикле while —

Помеченный продолжить используется для пропуска итерации нужного блока, когда он удовлетворяет определенному условию, без проверки условия в цикле while. Если вы пометите внешний цикл, используя метку outer@ и внутренний цикл, используя inner@ вы можете легко пропустить конкретное условие, используя continue @ external в условном блоке.

Синтаксис для продолжения в цикле

outer@ while(firstcondition) {
      // code
      inner@ while(secondcondition) {
            //code
            if(condition for continue) {
               continue@outer
            } 
      }
}

Программа использования Kotlin с надписью продолжить в то время как


fun main(args: Array<String>) {

  

    var num1 = 4

    outer@ while (num1 > 0) {

        num1--

        var num2 = 4

  

        inner@ while (num2 > 0) {

            if (num1 <= 2)

                continue@outer

            println("num1 = $num1, num2 = $num2")

            num2--

        }

    }

}

Выход:

num1 = 3, num2 = 4
num1 = 3, num2 = 3
num1 = 3, num2 = 2
num1 = 3, num2 = 1

Использование помеченного продолжения в цикле do-while

Мы также можем использовать помеченный продолжить в цикле do-while. В приведенной ниже программе мы использовали вложенный цикл do-while и обозначили внешний цикл внешним @ и внутренний цикл внутренним @. Условие продолжения проходит во внутреннем цикле do-while. Если условие становится истинным, тогда пропускаются следующие операторы или выражения и передается элемент управления во внешнее задание для повторения.

Синтаксис помеченного продолжения в цикле do-while

outer@ do {
       // code
       inner@ do {
           // code
           if(condition for continue) {
              continue@outer
           }
       } while(firstcondition)
} while(secondcondition)


fun main(args: Array<String>) {

  

    var num1 = 4

    outer@ do {

        num1--

        var num2 = 4

  

        inner@ do {

            if (num1 <= 2)

                continue@outer

            println("num1 = $num1; num2 = $num2")

            num2--

        } while (num2 > 0)

  

    } while (num1 > 0)

}

Выход:

num1 = 3; num2 = 4
num1 = 3; num2 = 3
num1 = 3; num2 = 2
num1 = 3; num2 = 1

Использование пометки продолжить в течение цикла —

Мы также можем использовать помечены для цикла. В приведенной ниже программе мы использовали вложенные циклы for и пометили внешний цикл внешним @ и внутренний цикл внутренним @. Условие продолжения проходит во внутреннем цикле for. Если условие становится истинным, оно пропускает следующие операторы и передает управление внешнему циклу for для дальнейшей итерации.

Синтаксис для обозначенного продолжения в цикле

outer@ for(iteration through iterator) {
    // code
      inner@ for(iteration through iterator) {
           // code
          if(condition for continue) {
          continue@outer
          }
      }
}

Kotlin программа использования продолжения помечена для цикла


fun main(args: Array<String>) {

    outer@ for (num1 in 4 downTo 1) {

  

        inner@ for (num2 in 4 downTo 1) {

            if (num1 <= 3)

                continue@outer

            println("num1 = $num1; num2 = $num2")

        }

    }

}

Выход:

num1 = 4; num2 = 4
num1 = 4; num2 = 3
num1 = 4; num2 = 2
num1 = 4; num2 = 1


Report Page