ตอนที่ 5 การใช้งาน Loops ใน Kotlin

คุณสมบัติที่สำคัญประการหนึ่งของภาษาการเขียนโปรแกรมสำหรับรับทำแอพคือความสามารถในการทำงานซ้ำ ๆ ได้อย่างมีประสิทธิภาพ ในการทำแอพ Kotlin เรามีลูปหลายประเภทเพื่อช่วยให้บรรลุเป้าหมายนี้ และในบทความนี้ เราจะมาสำรวจแต่ละลูปโดยละเอียด

ลูป For

ลูปที่ใช้บ่อยที่สุดในการทำแอพ Kotlin คือ for ลูป ใช้เพื่อวนซ้ำช่วง อาร์เรย์ หรือชุดองค์ประกอบอื่นๆ ไวยากรณ์ทั่วไปของ for วนซ้ำมีดังนี้

for(item in collection) {
   // code to be executed
}

ในกรณีนี้ item แสดงถึง element ปัจจุบันของคอลเลกชัน และคอลเลกชันแสดงถึงช่วง อาร์เรย์ หรือคอลเลกชันอื่นๆ ที่กำลังวนซ้ำ รหัสภายในวงเล็บปีกกาจะถูกเรียกใช้สำหรับแต่ละ element ของคอลเลกชัน

วนซ้ำในช่วง

เริ่มจากกรณีการใช้งานพื้นฐานที่สุดของ for loop: การวนซ้ำในช่วงของค่าต่างๆ เราสามารถทำได้โดยใช้ตัวดำเนินการ .. ซึ่งสร้างช่วงของค่าระหว่างจุดเริ่มต้นและจุดสิ้นสุดที่ระบุ ตัวอย่าง:

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

ในตัวอย่างนี้ การวนซ้ำจะดำเนินการสิบครั้ง โดย i จะรับค่าตั้งแต่ 1 ถึง 10 ในการวนซ้ำแต่ละครั้ง ฟังก์ชัน println ถูกเรียกใช้สำหรับแต่ละค่าของ i โดยพิมพ์ไปยังคอนโซล

วนซ้ำในอาร์เรย์

เรายังสามารถใช้ for วนซ้ำเพื่อวนซ้ำอาร์เรย์ขององค์ประกอบ ในการทำเช่นนี้ เราเพียงระบุอาร์เรย์เป็นคอลเลกชั่นที่จะวนซ้ำ ตัวอย่าง:

val numbers = arrayOf(1, 2, 3, 4, 5)

for(number in numbers) {
    println(number)
}

ในตัวอย่างนี้ การวนซ้ำจะดำเนินการห้าครั้ง โดยตัวเลขจะรับค่าของแต่ละองค์ประกอบในอาร์เรย์ตัวเลขในการวนซ้ำแต่ละครั้ง ฟังก์ชัน println ถูกเรียกสำหรับแต่ละอิลิเมนต์ของอาร์เรย์ โดยพิมพ์ไปยังคอนโซล

วนซ้ำในคอลเลกชัน

เรายังสามารถใช้ for วนซ้ำเพื่อวนซ้ำในคอลเลกชันได้ ตัวอย่าง:

val names = listOf("Alice", "Bob", "Charlie")

for(name in names) {
    println(name)
}

ในตัวอย่างนี้ การวนซ้ำจะดำเนินการสามครั้ง โดยชื่อจะยึดตามค่าของแต่ละองค์ประกอบในรายการชื่อในการวนซ้ำแต่ละครั้ง ฟังก์ชัน println ถูกเรียกสำหรับแต่ละอิลิเมนต์ของรายการ โดยพิมพ์ไปยังคอนโซล

ลูป While

ลูปอีกประเภทใน Kotlin คือลูป while มันถูกใช้เพื่อทำซ้ำบล็อกของโค้ดในการทำแอพตราบเท่าที่เงื่อนไขบางอย่างเป็นจริง ไวยากรณ์ทั่วไปของลูป while เป็นดังนี้:

while(condition) {
    // code to be executed
}

ในที่นี้ condition คือเงื่อนไขที่ต้องเป็นจริงเพื่อให้ลูปทำงานต่อไปได้ โค้ดในการทำแอพภายในวงเล็บปีกกาจะถูกดำเนินการตราบเท่าที่เงื่อนไขเป็นจริง

ตัวอย่าง

ต่อไปนี้เป็นตัวอย่างของการวนลูปแบบ while ที่นับ 1 ถึง 10:

var i = 1

while(i <= 10) {
    println(i)
    i++
}

ในตัวอย่างนี้ การวนซ้ำจะดำเนินการสิบครั้ง โดย i จะรับค่าตั้งแต่ 1 ถึง 10 ในการวนซ้ำแต่ละครั้ง ฟังก์ชัน println ถูกเรียกใช้สำหรับแต่ละค่าของ i โดยพิมพ์ไปยังคอนโซล

ลูป Do-While

ลูปประเภทที่สามใน Kotlin คือลูปแบบ do-while คล้ายกับลูป while แต่รันโค้ดภายในลูปอย่างน้อยหนึ่งครั้ง แม้ว่าเงื่อนไขจะเป็นเท็จก็ตาม ไวยากรณ์ทั่วไปของลูป do-while เป็นดังนี้:

do {
    // code to be executed
} while(condition)

ในที่นี้ condition คือเงื่อนไขที่ต้องเป็นจริงเพื่อให้ลูปทำงานต่อไปได้ โค้ดภายในวงเล็บปีกกาจะถูกดำเนินการอย่างน้อยหนึ่งครั้ง จากนั้นจึงทำการตรวจสอบเงื่อนไข หากเงื่อนไขเป็นจริง โค้ดในการทำแอพภายในลูปจะดำเนินการซ้ำต่อไป

ตัวอย่าง

นี้เป็นตัวอย่างของการวนซ้ำแบบ do-while ที่ขอให้ผู้ใช้ป้อนตัวเลขระหว่าง 1 ถึง 10:

var input: Int

do {
    print("Enter a number between 1 and 10: ")
    input = readLine()?.toIntOrNull() ?: 0
} while(input < 1 || input > 10)

println("You entered $input.")

ในตัวอย่างนี้ การวนซ้ำจะดำเนินการอย่างน้อยหนึ่งครั้ง เมื่อเงื่อนไขอินพุต < 1 || อินพุต > 10 เป็นจริงในตอนแรก โค้ดภายในลูปจะแจ้งให้ผู้ใช้ป้อนตัวเลขระหว่าง 1 ถึง 10 อ่านค่าที่ป้อน และเก็บไว้ในตัวแปรอินพุต หากผู้ใช้ป้อนตัวเลขนอกช่วง การวนซ้ำจะดำเนินการต่อ และแจ้งผู้ใช้อีกครั้ง หากผู้ใช้ป้อนตัวเลขภายในช่วง การวนซ้ำจะออกจากโปรแกรม และโปรแกรมจะพิมพ์ข้อความตามอินพุตของผู้ใช้

คำสั่งควบคุม Break และ Continue

นอกจากลูป for, while และ do-while แล้วในการทำแอพ Kotlin ยังมีคำสั่งควบคุม 2 คำสั่งที่สามารถใช้ภายในลูปได้: Break และ Continue

คำสั่ง break ใช้เพื่อออกจากลูปทันที หากพบคำสั่ง break ลูปจะยุติ และโปรแกรมจะดำเนินการต่อด้วยโค้ดบรรทัดถัดไปหลังจากการวนซ้ำ นี่คือตัวอย่าง:

for(i in 1..10) {
    if(i == 5) {
        break
    }
    println(i)
}

ในตัวอย่างนี้ การวนซ้ำจะดำเนินการห้าครั้ง โดย i รับค่าตั้งแต่ 1 ถึง 4 เมื่อฉันเท่ากับ 5 จะพบคำสั่ง break และการวนซ้ำจะสิ้นสุดลง จากนั้นโปรแกรมจะดำเนินการต่อด้วยโค้ดบรรทัดถัดไปหลังจากการวนซ้ำ

คำสั่ง continue ใช้เพื่อข้ามไปยังการวนซ้ำถัดไป หากพบคำสั่ง continue โค้ดภายในลูปสำหรับการวนซ้ำปัจจุบันจะถูกข้ามไป และลูปจะดำเนินการวนซ้ำถัดไป นี่คือตัวอย่าง:

for(i in 1..10) {
    if(i % 2 == 0) {
        continue
    }
    println(i)
}

ในตัวอย่างนี้ การวนซ้ำจะดำเนินการสิบครั้ง โดย i รับค่าตั้งแต่ 1 ถึง 10 เมื่อ i เป็นเลขคู่ จะพบคำสั่ง continue และโค้ดภายในการวนซ้ำสำหรับการวนซ้ำนั้นจะถูกข้ามไป จากนั้นลูปจะดำเนินการวนซ้ำถัดไป โดยพิมพ์เฉพาะค่า i ที่เป็นเลขคี่

Kotlin มีลูปหลายประเภทเพื่อช่วยให้ทำงานซ้ำๆ ในการทำแอพได้อย่างมีประสิทธิภาพ for loop ใช้เพื่อวนซ้ำช่วง อาร์เรย์ หรือชุดองค์ประกอบอื่นๆ การวนรอบ while ใช้เพื่อทำซ้ำบล็อกของโค้ดตราบใดที่เงื่อนไขบางอย่างเป็นจริง ลูป do-while คล้ายกับลูป while แต่รันโค้ดภายในลูปอย่างน้อยหนึ่งครั้ง คำสั่ง break และ continue สามารถใช้ภายในลูปเพื่อออกจากลูปทันทีหรือข้ามไปได้ทำให้สะดวกในการรับทำแอพได้ดีมากขึ้น

KOLTIN ANDROID คืออะไร เริ่มต้น อย่างไร

ตอนที่ 4 Collections เช่น lists, sets และ maps สำหรับ Kotlin
ตอนที่ 6 เรียนรู้การสร้างและใช้งานฟังก์ชัน Functions ใน Kotlin