Kotlin kontynuuj (z przykładami)

W tym samouczku nauczysz się używać opcji Continue, aby pominąć bieżącą iterację pętli. W tym artykule dowiesz się również o etykietach kontynuacji.

Załóżmy, że pracujesz z pętlami. Czasami pożądane jest pominięcie bieżącej iteracji pętli.

W takim przypadku continuejest używany. continueKonstrukt przeskoczenie bieżącej iteracji pętli otaczającej i kontroli program przechodzi do końca ciała pętli.

Jak działa dalej?

Jest prawie zawsze używany z konstrukcją if… else. Na przykład,

 while (testExpression1) (// kody1 if (testExpression2) (kontynuuj) // kody2)

Jeśli testExpression2 jest oceniany na true, continuejest wykonywany, który pomija wszystkie kody wewnątrz whilepętli po niej dla tej iteracji.

Przykład: Kotlin kontynuuje

 fun main(args: Array) ( for (i in 1… 5) ( println("$i Always printed.") if (i> 1 && i < 5) ( continue ) println("$i Not always printed.") ) )

Po uruchomieniu programu wynik będzie następujący:

1 Zawsze drukowane. 1 Nie zawsze drukowane. 2 Zawsze drukowane. 3 Zawsze drukowane. 4 Zawsze drukowane. 5 Zawsze drukowane. 5 Nie zawsze drukowane.

Gdy wartość i jest większa niż 1 i mniejsza niż 5, continuejest wykonywany, co pomija wykonanie

 println ("$ i Nie zawsze drukowane.")

komunikat.

Jednak oświadczenie

 println ("$ i zawsze drukowane.")

jest wykonywana w każdej iteracji pętli, ponieważ ta instrukcja istnieje przed continuekonstrukcją.

Przykład: Oblicz sumę tylko liczb dodatnich

Poniższy program oblicza sumę maksymalnie 6 liczb dodatnich wprowadzonych przez użytkownika. Jeśli użytkownik wprowadzi liczbę ujemną lub zero, zostanie pominięty w obliczeniach.

Odwiedź stronę Kotlin Basic Input Output, aby dowiedzieć się więcej o tym, jak przyjmować dane wejściowe od użytkownika.

 fun main(args: Array) ( var number: Int var sum = 0 for (i in 1… 6) ( print("Enter an integer: ") number = readLine()!!.toInt() if (number <= 0) continue sum += number ) println("sum = $sum") )

Po uruchomieniu programu wynik będzie następujący:

 Podaj liczbę całkowitą: 4 Podaj liczbę całkowitą: 5 Podaj liczbę całkowitą: -50 Podaj liczbę całkowitą: 10 Podaj liczbę całkowitą: 0 Podaj liczbę całkowitą: 12 suma = 31

Kotlin Oznaczony dalej

To, czego się nauczyłeś do tej pory, jest nieoznaczoną formą continue, która pomija bieżącą iterację najbliższej otaczającej pętli. continuemożna również użyć do pominięcia iteracji żądanej pętli (może to być pętla zewnętrzna) przy użyciu continueetykiet.

Jak działa oznaczony dalej?

Etykieta w Kotlinie zaczyna się od identyfikatora, po którym następuje @.

Tutaj zewnętrzna pętla @ jest etykietą oznaczoną na zewnętrznej pętli while. Teraz, używając continuez etykietą ( continue@outerloopw tym przypadku), możesz pominąć wykonywanie kodów określonej pętli dla tej iteracji.

Przykład: oznaczony jako kontynuuj

 fun main(args: Array) ( here@ for (i in 1… 5) ( for (j in 1… 4) ( if (i == 3 || j == 2) continue@here println("i = $i; j = $j") ) ) )

Po uruchomieniu programu wynik będzie następujący:

i = 1; j = 1 i = 2; j = 1 i = 4; j = 1 i = 5; j = 1

Używanie etykiet continuejest często odradzane, ponieważ utrudnia to zrozumienie kodu. Jeśli jesteś w sytuacji, w której musisz użyć etykiet continue, zrefaktoryzuj swój kod i spróbuj rozwiązać go w inny sposób, aby był bardziej czytelny.

W Kotlin istnieją 3 wyrazy jump strukturalne: break, continuei return. Aby dowiedzieć się więcej breaki returnwyrazić swoją opinię, odwiedź:

  • Przerwa Kotlin
  • Funkcja Kotlina

Interesujące artykuły...