Vòng lặp for trong Kotlin lặp qua bất kỳ thứ gì cung cấp trình vòng lặp. Trong bài viết này, bạn sẽ học cách tạo vòng lặp (qua các ví dụ).

Không giống như Java và các ngôn ngữ khác, không có vòng lặp thông thường trong Kotlin.

Trong Kotlin, vòng lặp for được sử dụng để lặp qua các phạm vi, mảng, map, v.v. (bất cứ điều gì cung cấp một trình vòng lặp).

Cú pháp của vòng lặp for trong Kotlin là:

for (item in collection) {
    // body of loop
}

Ví dụ: Lặp qua một phạm vi

fun main(args: Array<String>) {

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

Ở đây, vòng lặp lặp qua phạm vi và in từng mục riêng lẻ.

Khi bạn chạy chương trình, kết quả sẽ là:

1
2
3
4
5

Nếu phần thân của vòng lặp chỉ chứa một câu lệnh (như ví dụ trên), thì không cần thiết phải sử dụng dấu ngoặc nhọn { }.

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

Có thể lặp qua một phạm vi bằng vòng lặp for vì các phạm vi cung cấp một trình vòng lặp. Để tìm hiểu thêm, hãy truy cập trình vòng lặp trong Kotlin .

Ví dụ: Các cách khác nhau để lặp qua một phạm vi




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)
}

Khi bạn chạy chương trình, kết quả sẽ là:

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

1. Lặp lại qua một mảng

Đây là một ví dụ để lặp qua một mảng String.

fun main(args: Array<String>) {

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

    for (item in language)
        println(item)
}

Khi bạn chạy chương trình, kết quả sẽ là:

Ruby
Koltin
Python
Java

Có thể lặp qua một mảng với một chỉ số. Ví dụ,

fun main(args: Array<String>) {

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

    for (item in language.indices) {

        // printing array elements having even index only
        if (item%2 == 0)
            println(language[item])
    }
}

Khi bạn chạy chương trình, kết quả sẽ là:

Ruby
Python

Nếu bạn muốn tìm hiểu thêm về mảng, hãy truy cập mảng trong Kotlin .

2. Lặp lại qua một String

fun main(args: Array<String>) {

    var text= "Kotlin"

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

Khi bạn chạy chương trình, kết quả sẽ là:

K
o
t
l
i
n

Tương tự như mảng, bạn có thể lặp qua một String với một chỉ số. Ví dụ,

fun main(args: Array<String>) {

    var text= "Kotlin"

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

Khi bạn chạy chương trình, kết quả sẽ là:

K
o
t
l
i
n

Bạn sẽ học cách lặp lại qua một map bằng cách sử dụng vòng lặp for trong bài viết về map trong Kotlin .