คำสั่ง switch เป็นอีกทางเลือกหนึ่ง ในการเขียนคำสั่งควบคุมเหมาะกับการนำมาใช้กับตัวแปร เพื่อเช็คเงื่อนไขเจาะจงเฉพาะค่า ถ้าต้องการเช็คค่าที่ช่วงแบบ if จะสะดวกกว่า ตัวอย่างเช่น x > 10 และ x < 20, number < 0 และไม่เท่ากับ -1 เป็นต้น
โครงสร้างของ switch เป็นดังนี้
switch variable {
case value:
statements
case value:
statements
default:
statements
}
โดยเงื่อนไขแบบ switch จะประกอบด้วยส่วน switch, case
switch คือ ส่วนที่เราป้อนตัวแปรที่ต้องการตรวจสอบเงื่อนไขเข้าไป
case คือ ค่าที่ถูกกำหนด ถ้าตรงกับค่าตัวแปรจะทำให้คำสั่ง (statements) ภายในนั้นทำงาน
ส่วนสุดท้าย default จะทำงานเมื่อเงื่อนไขไม่ตรงกับ case เลย คำสั่งภายใน default ก็จะทำงาน
ตัวอย่างการใช้งาน switch
let numberOfMarbles = 1;
switch numberOfMarbles {
case 1:
print("You have just one marble.")
case 2,3,4,5:
print("You have a few marbles.")
default:
print("You have way too many marbles!")
}
ผลลัพธ์
จากตัวอย่าง เราทำการเปลี่ยนค่าตัวแปรเป็น
1 จะได้ผลลัพธ์ออกมาเป็น "You have just on marble."
2 จะได้ผลลัพธ์ออกมาเป็น "You have a few marble."
10 จะได้ผลลัพธ์ออกมาเป็น "You have way too many marble!"
เป็นไงบ้างครับ การใช้งาน switch - case ค่อนข้างเข้าใจได้ง่ายๆ เมื่อเราใช้งานบ่อยๆ จะพบว่า "swift case เหมาะกับการเช็คค่าตัวแปรที่เจาะจง ไม่เหมาะกับกับการเช็คค่าที่เป็นช่วงครับ"