Kotlin for 循環(huán)

Kotlin中的for循環(huán)遍歷任何提供迭代器的對象。在本文中,您將學(xué)習(xí)如何創(chuàng)建for循環(huán)(借助示例)。

與Java和其他語言不同,Kotlin中沒有傳統(tǒng)的for循環(huán)。

在Kotlin中,for循環(huán)用于遍歷范圍,數(shù)組,映射等(提供迭代器的任何對象)。

Kotlin 中for循環(huán)的語法是:

for (item in collection) {
    //循環(huán)體
}

示例:遍歷范圍

fun main(args: Array<String>) {

    for (i in 1..5) {
        println(i)
    }
}

在這里,循環(huán)遍歷范圍并打印單個項目。

運(yùn)行該程序時,輸出為:

1
2
3
4
5

如果循環(huán)的主體僅包含一個語句(如上述示例),則不必使用花括號{ }。

fun main(args: Array<String>) {
    for (i in 1..5) println(i)
}

可以使用for循環(huán)遍歷范圍,因為range提供了一個迭代器。

示例:遍歷范圍的不同方法

fun main(args: Array<String>) {

    print("for (i in 1..5) print(i) = ")
    for (i in 1..5) print(i)

    println()

    print("for (i in 5..1) print(i) = ")
    for (i in 5..1) print(i)             // prints nothing

    println()

    print("for (i in 5 downTo 1) print(i) = ")
    for (i in 5 downTo 1) print(i)

    println()

    print("for (i in 1..4 step 2) print(i) = ")
    for (i in 1..5 step 2) print(i)

    println()

    print("for (i in 4 downTo 1 step 2) print(i) = ")
    for (i in 5 downTo 1 step 2) print(i)
}

運(yùn)行該程序時,輸出為:

for (i in 1..5) print(i) = 12345
for (i in 5..1) print(i) = 
for (i in 5 downTo 1) print(i) = 54321
for (i in 1..4 step 2) print(i) = 135
for (i in 4 downTo 1 step 2) print(i) = 531

遍歷數(shù)組

這是一個遍歷String數(shù)組的示例。

fun main(args: Array<String>) {

    var language = arrayOf("Ruby", "Koltin", "Python" "Java")

    for (item in language)
        println(item)
}

運(yùn)行該程序時,輸出為:

Ruby
Koltin
Python
Java

可以遍歷帶有索引的數(shù)組。例如,

fun main(args: Array<String>) {

    var language = arrayOf("Ruby", "Koltin", "Python", "Java")

    for (item in language.indices) {

        //打印僅具有偶數(shù)索引的數(shù)組元素
        if (item%2 == 0){
            println(language[item])
        }
        
    }
}

運(yùn)行該程序時,輸出為:

Ruby
Python

遍歷字符串

fun main(args: Array<String>) {

    var text= "Kotlin"

    for (letter in text) {
        println(letter)
    }
}

運(yùn)行該程序時,輸出為:

K
o
t
l
i
n

與數(shù)組類似,您可以使用索引遍歷字符串。 例如,

fun main(args: Array<String>) {

    var text= "Kotlin"

    for (item in text.indices) {
        println(text[item])
    }
}

運(yùn)行該程序時,輸出為:

K
o
t
l
i
n
丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清