Котлин для петли

Котлин для петли

#Kotlin


В Kotlin цикл for эквивалентен циклу foreach других языков, таких как C #. Здесь цикл for используется для обхода любой структуры данных, которая предоставляет итератор. Он используется совсем иначе, чем цикл for других языков программирования, таких как Java или C.


Синтаксис цикла for в Котлине:

for(item in collection) {
       // code to execute
}

В Kotlin цикл for используется для итерации следующего, поскольку все они предоставляют итератор.

  • Ассортимент
  • массив
  • строка
  • Коллекция

Итерация по диапазону с использованием цикла for —

Вы можете пройти через Range, потому что он предоставляет итератор. Есть много способов перебора Range. Оператор in, используемый в цикле for для проверки значения, находится в диапазоне или нет.

Ниже программа пример обхода диапазона различных способов и в операторе , чтобы проверить значение в диапазоне. Если значение находится между диапазонами, оно возвращает true и печатает значение.

  • Переберите диапазон, чтобы вывести значения:
  • fun main(args: Array<String>)
  • {
  •     for (i in 1..6) {
  •         print("$i ")
  •     }
  • }
  • Выход:
1 2 3 4 5 6
  • Итерация по диапазону для перехода с помощью шага 3:
  • fun main(args: Array<String>)
  • {
  •     for (i in 1..10 step 3) {
  •         print("$i ")
  •     }
  • }
  • Выход:
1 4 7 10
  • Вы не можете перебирать Range сверху вниз, не используя DownTo :
  • fun main(args: Array<String>)
  • {
  •     for (i in 5..1) {
  •         print("$i ")
  •     }
  •     println("It prints nothing")
  • }
  • Выход:
It prints nothing
  • Выполните итерацию по Range сверху вниз, используя downTo :
  • fun main(args: Array<String>)
  • {
  •     for (i in 5 downTo 1) {
  •         print("$i ")
  •     }
  • }
  • Выход:
5 4 3 2 1
  • Перейдите через Range сверху вниз, используя downTo и шаг 3 :
  • fun main(args: Array<String>)
  • {
  •     for (i in 10 downTo 1 step 3) {
  •         print("$i ")
  •     }
  • }
  • Выход:
10 7 4 1

Итерация по массиву с использованием цикла for —

  • Массив — это структура данных, которая содержит тот же тип данных, что и Integer или String. Массив можно просмотреть с помощью цикла for, поскольку он также предоставляет итератор. Каждый массив имеет начальный индекс и по умолчанию равен 0.
  • Вы можете пройти через массив:
  • Без использования свойства индекса
  • С использованием свойства Index
  • Использование функции библиотеки withIndex
  • Обход массива без использования свойства index:
  • fun main(args: Array<String>) {
  •     var numbers = arrayOf(1,2,3,4,5,6,7,8,9,10)
  •   
  •     for (num in numbers){
  •         if(num%2 == 0){
  •             print("$num ")
  •         }
  •     }
  • }
  • Выход:
2 4 6 8 10
  • Обход массива с использованием свойства index:
  • fun main(args: Array<String>) {
  •   
  •     var planets = arrayOf("Earth", "Mars", "Venus", "Jupiter", "Saturn")
  •   
  •     for (i in planets.indices) {
  •         println(planets[i])
  •     }
  • }
  • Выход:
Earth
Mars
Venus
Jupiter
Saturn
  • withIndex() массива с withIndex() библиотечной функции withIndex() :
  • fun main(args: Array<String>) {
  •     var planets = arrayOf("Earth", "Mars", "Venus", "Jupiter", "Saturn")
  •   
  •     for ((index,value) in planets.withIndex()) {
  •         println("Element at $index th index is $value")
  •     }
  • }
  • Выход:
Element at 0 th index is Earth
Element at 1 th index is Mars
Element at 2 th index is Venus
Element at 3 th index is Jupiter
Element at 4 th index is Saturn

Итерация по строке с использованием цикла for —

  • Строка может быть пройдена с помощью цикла for, поскольку она также предоставляет итератор.
  • Есть следующие способы прохождения строки:
  • Без использования свойства индекса
  • С использованием свойства Index
  • Использование функции библиотеки withIndex

  • fun main(args: Array<String>) {
  •     var name = "Geeks"
  •     var name2 = "forGeeks"
  •       
  •     // обход строки без использования свойства index
  •     for (alphabet in name)  print("$alphabet ")
  •   
  •     // обход строки с использованием свойства index
  •     for (i in name2.indices) print(name2[i]+" ")
  •     println(" ")
  •       
  •     // обход строки с использованием библиотечной функции withIndex ()
  •     for ((index,value) in name.withIndex())
  •     println("Element at $index th index is $value")
  • }
  • Выход:
G e e k s f o r G e e k s  
Element at 0 th index is G
Element at 1 th index is e
Element at 2 th index is e
Element at 3 th index is k
Element at 4 th index is s

Итерация по коллекции с использованием цикла for —

  • Вы можете просмотреть коллекцию, используя цикл for. Существует три типа списка коллекций, карта и набор.
  • В функции listOf() мы можем передавать разные типы данных одновременно.
  • Ниже приведена программа для обхода списка с использованием цикла for.

  • fun main(args: Array<String>) {
  •   
  •     // только чтение, фиксированный размер
  •     var collection = listOf(1,2,3,"listOf", "mapOf", "setOf")
  •   
  •     for (element in collection) {
  •         println(element)
  •     }
  • }
  • Выход:
1
2
3
listOf
mapOf
setOf


Report Page