ตัวอย่างเช่น
var number:int = 15;
//ส่ง number ไปตรวจเช็ค
switch ( number ) {
case 1: trace("number is too low"); break;
case 10: trace("number is close"); break;
case 15: trace("correct"); break;
default: trace("incorrect");
}
โค้ดข้างบน จะได้ออกมาว่า correct ครับ
ซึ่งการทำงานมันจะทำตามลำดับ จากบนลงล่างดังนี้
1. switch รับตัวแปร number เข้ามาตรวจเช็ค
2. ค่า number ไม่เท่ากับ 1 (case 1) กระโดดข้ามไป
3. ค่า number ไม่เท่ากับ 10 (case 10) กระโดดข้ามไป
4. ค่า number เท่ากับ 15 (case 15) ทำงานคำสั่ง trace("correct"); และจบการตรวจสอบเงื่อนไข (break)
ถ้าใน case 15: ไม่มี break มันจะทำงานในเงื่อนไข default ด้วยครับ
มันจะต่างจาก if/else นิดหน่อยตรงนี้
switch/case ผมมองว่า มันเอามาสำหรับเช็คเงื่อนไขในแบบ == (เทียบเท่ากับ) และไม่ต้องเขียนยาวๆ สำหรับคนขี้เกียจครับ
ซึ่งจะไปใช้ if/else เหมือนเดิมก็ไม่ได้ผิดอะไรฮะ แค่ขี้เกียจเฉยๆ