คำสั่งควบคุม Control Statement แบบทำซ้ำ ถูกนำมาใช้เพื่อช่วยในกรณี เมื่อโปรแกรมจำเป็นต้องทำงานคำสั่งเดิมซ้ำๆ
ตัวอย่างการเขียนโปรแกรมแสดงผลเปอร์เซ็นต์การ Loading บนหน้าจอเพิ่มขึ้นทีละ 10%
เมื่อไม่ใช้ Control Statement แบบทำซ้ำ
print("Loading 0%")
print("Loading 10%")
print("Loading 20%")
print("Loading 30%")
print("Loading 40%")
print("Loading 50%")
print("Loading 60%")
print("Loading 70%")
print("Loading 80%")
print("Loading 90%")
print("Loading 100%")
เมื่อใช้ Control Statement แบบทำซ้ำ แบบ for - in
for i in 0..<11 {
print("Loading \(i * 10)%")
}
สังเกตุว่าจำนวนบรรทัดที่เขียน source code จะลดลงมาก เมื่อใช้ Control Statement แบบทำซ้ำ ต่อมาเรามาทำความเข้าใจวิธีการใช้ for กันครับ โดยเนื้อหาในบทที่จะอ้างอิง Swift 3.0 ขึ้นไป ซึ่งคำสั่ง for มีการเปลี่ยนแปลงรูปแบบการเขียนจาก Swift 2.2 ดังนี้
ใน Swift 3.0 ไม่สามารถใช้ for แบบนี้ได้อีกแล้ว!! เปลี่ยนไปใช้ for - in แทน
for var number = 10; number < 15; number++ {
print("The value of number is \(number)")
}
โครงสร้าง Control Statement แบบทำซ้ำ for - in
for index in 1...5 {
print("\(index) times 5 is \(index * 5)")
}
คำสั่ง for - in ใน Swift ประกอบด้วย index, range
Closed Range Operator คือ เครื่องหมาย ( ... ) ใช้แสดงถึงขอบเขตจำนวนรอบที่ for ทำงาน จากตัวอย่างด้านบน ทำงาน 1 ถึง 5 เท่ากับ 5 รอบ โดย index จะถูกกำหนดด้วยค่าเริ่มต้นของ range เมื่อจบรอบจะเพิ่มขึ้นทีละ 1 ไปเรื่อยๆ จนจบ
for index in 1..<5 {
print("\(index) times 5 is \(index * 5)")
}
Half-Open Range Operator คือ เครื่องหมาย ( ..< ) ใช้แสดงถึงขอบเขตจำนวนรอบที่ for ทำงาน คล้ายกับ Closed Range Operator แต่ละไม่รวมรอบสุดท้ายเข้าไป ตัวอย่าง
ถ้าเราไม่ต้องการใช้ index อาจจะแทน index ด้วยเครื่อง _ (underscore) ก็ได้
let base = 3
let power = 10
var answer = 1
for _ in 1...power {
answer *= base
}
print("\(base) to the power of \(power) is \(answer)")
Control Statement แบบทำซ้ำ นอกจาก for - in แล้วยังมีอีก 2 ชนิด นั่นคือ white, repeat - while ที่มีความเหมาะสมในการใช้งานต่างกัน เป็นยังไงตามอ่านได้ที่บทความถัดไปเลยครับ