ความแตกต่างที่สำคัญ – ถ้าอย่างอื่นเทียบกับสวิตช์
มีโครงสร้างการตัดสินใจในการเขียนโปรแกรม if else และ switch เป็นสองในนั้น นิพจน์ประกอบด้วยค่า ตัวดำเนินการ ค่าคงที่ ฯลฯ if else อนุญาตให้ดำเนินการบล็อกของคำสั่งหากนิพจน์ที่กำหนดเป็นจริงหรือดำเนินการบล็อกทางเลือกหากนิพจน์ที่กำหนดเป็นเท็จ สวิตช์นี้ใช้เพื่อให้ค่าของตัวแปรหรือนิพจน์เปลี่ยนโฟลว์การควบคุมของการทำงานของโปรแกรมผ่านสาขาหลายทาง หากโปรแกรมเมอร์ต้องการตรวจสอบค่าของตัวแปรเดียว เขาสามารถใช้คำสั่ง switch ได้ บทความนี้กล่าวถึงความแตกต่างระหว่าง if else และ switchความแตกต่างที่สำคัญระหว่าง if else และ switch คือ if else บล็อกการดำเนินการจะขึ้นอยู่กับการประเมินนิพจน์ในคำสั่ง if ในขณะที่ใน switch คำสั่งที่จะดำเนินการจะขึ้นอยู่กับตัวแปรเดียวที่ส่งผ่านไปยังตัวแปรนั้น
จะเป็นเช่นไรอีก
ถ้ามีอีกสองช่วงตึก พวกเขาเป็นถ้าและอย่างอื่น บล็อก if มีนิพจน์ที่จะประเมิน หากเป็นจริง คำสั่งภายในบล็อก if จะดำเนินการ หากเงื่อนไขเป็นเท็จ คำสั่งที่เป็นของ else block จะดำเนินการ ภาษาการเขียนโปรแกรมถือว่าค่าที่ไม่ใช่ศูนย์และไม่ใช่ค่าว่างเป็นจริง ศูนย์และค่าว่างถือเป็นเท็จ if และ else เป็นคีย์เวิร์ด ดังนั้นจึงไม่สามารถใช้เป็นตัวระบุได้
รูปที่ 01: โปรแกรมพร้อมคำสั่ง if else
ตามโปรแกรมข้างต้น ตัวเลขเป็นตัวแปรที่สามารถเก็บจำนวนเต็มได้มีค่า 5 ในบล็อก if นิพจน์จะถูกตรวจสอบ หากเศษเหลือเป็น 0 หลังจากหารตัวเลขด้วยศูนย์แล้ว แสดงว่าจำนวนนั้นเป็นเลขคู่ หากเศษเหลือเป็น 1 แสดงว่าเป็นเลขคี่ หมายเลข 5 เป็นเลขคี่ ดังนั้นบล็อก else จะดำเนินการ
สวิตช์คืออะไร
หากโปรแกรมเมอร์ต้องการตรวจสอบค่าของตัวแปรเดียว เขาสามารถใช้สวิตช์ได้ เป็นคำสั่งการเลือกแบบปรนัย สวิตช์สามารถมีคำสั่งหลายกรณีได้ เมื่อตัวแปรถูกส่งไปยังสวิตช์ จะถูกเปรียบเทียบกับค่าของคำสั่งแต่ละกรณี หากพบค่าที่สอดคล้องกัน คำสั่งของกรณีนั้น ๆ จะดำเนินการ คำสั่งเหล่านั้นดำเนินการจนกว่าจะมีการหยุดพัก หากคำสั่ง case ไม่มีคำสั่ง break การดำเนินการจะเกิดขึ้นจนกระทั่งสิ้นสุดคำสั่ง switch กรณีเริ่มต้นจะดำเนินการหากไม่มีกรณีที่เป็นจริง ค่าเริ่มต้นไม่ต้องการคำสั่งพัก
รูปที่ 02: โปรแกรมพร้อมสวิตช์
ตามโปรแกรมด้านบน num1 และ num2 มีค่าจำนวนเต็มสองค่า ตัวดำเนินการคืออักขระ มันถูกส่งต่อไปยังสวิตช์ มีการตรวจสอบด้วยงบกรณีทั้งหมด โอเปอเรเตอร์ที่ผ่านคือดิวิชั่น ดังนั้นจึงมีการคำนวณและพิมพ์การแบ่งส่วน จากนั้นการดำเนินการจะออกจากสวิตช์เนื่องจากคำสั่งพัก เมื่อถึงจุดพัก ตัวควบคุมจะถูกส่งไปยังบรรทัดถัดไปหลังจากสวิตช์ โดยทั่วไป คำสั่ง switch มักจะใช้คำสั่งคีย์บอร์ดเพื่อเลือกคำสั่งจากคำสั่ง case หลายตัว
ความคล้ายคลึงกันระหว่าง if else กับ switch คืออะไร
ทั้ง if else และ switch เป็นโครงสร้างการตัดสินใจในการเขียนโปรแกรม
ความแตกต่างระหว่าง if else กับ switch ต่างกันอย่างไร
ถ้าอย่างอื่นเทียบกับสวิตช์ |
|
if else เป็นโครงสร้างการควบคุมที่ดำเนินการบล็อกคำสั่งหากเงื่อนไขเป็นจริงและดำเนินการบล็อกทางเลือกหากเงื่อนไขเป็นเท็จ | คำสั่งสวิตช์เป็นประเภทของกลไกการควบคุมการเลือกที่ใช้เพื่อให้ค่าของตัวแปรหรือนิพจน์เปลี่ยนโฟลว์การควบคุมของการดำเนินการโปรแกรมผ่านสาขาหลายทาง |
การดำเนินการ | |
ใน if else บล็อก if หรือบล็อก else จะดำเนินการตามนิพจน์ที่ประเมิน | สวิตช์จะดำเนินการหนึ่งกรณีหลังจากนั้นจนกว่าจะถึงจุดพักหรือจนกว่าจะสิ้นสุดสวิตช์ |
การประเมิน | |
คำสั่ง if ประเมิน จำนวนเต็ม อักขระ เลขทศนิยม หรือประเภทบูลีน | คำสั่งสวิตช์จะประเมินอักขระและจำนวนเต็ม |
การดำเนินการเริ่มต้น | |
หากเงื่อนไข if block เป็นเท็จ คำสั่งภายในบล็อก else จะดำเนินการ | สลับกัน หากไม่มีคำสั่ง case ใดตรงกัน คำสั่งเริ่มต้นจะถูกดำเนินการ |
การทดสอบ | |
if else ตรวจสอบความเสมอภาคและนิพจน์เชิงตรรกะ | สวิตช์ตรวจสอบความเท่าเทียมกัน |
สรุป – ถ้าอย่างอื่นเทียบกับสวิตช์
โครงสร้างการตัดสินใจสองแบบในการเขียนโปรแกรมคือถ้าอย่างอื่นและเปลี่ยน คำสั่ง if else เป็นคำสั่งแบบมีเงื่อนไขจะรันชุดคำสั่งขึ้นอยู่กับว่าเงื่อนไขนั้นเป็นจริงหรือเท็จ สวิตช์สามารถใช้ตรวจสอบตัวแปรเดียวความแตกต่างระหว่าง if else และ switch คือ if else บล็อกการดำเนินการตามการประเมินนิพจน์ในคำสั่ง if ในขณะที่คำสั่ง switch จะเลือกคำสั่งที่จะดำเนินการโดยขึ้นอยู่กับตัวแปรเดียวที่ส่งผ่านไปยังตัวแปรนั้น