โครงสร้างการควบคุมใน Java

1. ภาพรวม

ในแง่พื้นฐานที่สุดโปรแกรมคือรายการคำสั่ง โครงสร้างควบคุมคือบล็อกการเขียนโปรแกรมที่สามารถเปลี่ยนเส้นทางที่เราดำเนินการตามคำสั่งเหล่านั้น

ในบทช่วยสอนนี้เราจะสำรวจโครงสร้างการควบคุมใน Java

โครงสร้างควบคุมมีสามประเภท:

  • Conditional Branches ซึ่งเราใช้ในการเลือกระหว่างสองเส้นทางขึ้นไป มีสามประเภทอยู่ใน Java: ถ้า / อื่น ๆ / อื่นถ้า , ผู้ประกอบ ternaryและสวิทช์
  • ลูปที่ใช้ในการวนซ้ำผ่านค่า / อ็อบเจ็กต์หลายค่าและรันโค้ดบล็อกซ้ำ ประเภทวงพื้นฐานใน java มีที่สำหรับ , ในขณะที่และทำในขณะที่
  • Branching Statements ซึ่งใช้เพื่อปรับเปลี่ยนโฟลว์ของการควบคุมในลูป มีสองประเภทอยู่ใน Java: แบ่งและดำเนินการต่อไป

2. ถ้า / อื่น / อื่นถ้า

หาก / อื่นคำสั่งเป็นส่วนใหญ่พื้นฐานของโครงสร้างการควบคุม แต่ยังสามารถได้รับการพิจารณาพื้นฐานของการตัดสินใจในการเขียนโปรแกรม

ในขณะที่ถ้าสามารถนำมาใช้ด้วยตัวเองที่พบมากที่สุดใช้สถานการณ์คือการเลือกระหว่างสองเส้นทางด้วยหาก / อื่น :

if (count > 2) { System.out.println("Count is higher than 2"); } else { System.out.println("Count is lower or equal than 2"); }

ในทางทฤษฎีเราสามารถเชื่อมโยงหรือซ้อนกันได้ไม่ จำกัดถ้า / elseบล็อก แต่จะส่งผลกระทบต่อความสามารถในการอ่านโค้ดและนั่นเป็นสาเหตุที่ไม่แนะนำ

เราจะสำรวจข้อความอื่นในส่วนที่เหลือของบทความนี้

3. ตัวดำเนินการ Ternary

เราสามารถใช้ตัวดำเนินการ ternary เป็นนิพจน์ชวเลขที่ทำงานเหมือนคำสั่งif / else

มาดูตัวอย่างif / elseของเราอีกครั้ง:

if (count > 2) { System.out.println("Count is higher than 2"); } else { System.out.println("Count is lower or equal than 2"); }

เราสามารถ refactor สิ่งนี้ด้วย ternary ได้ดังนี้:

System.out.println(count > 2 ? "Count is higher than 2" : "Count is lower or equal than 2");

แม้ว่า ternary จะเป็นวิธีที่ยอดเยี่ยมในการทำให้โค้ดของเราอ่านง่ายขึ้น แต่ก็ไม่ได้เป็นการทดแทนif / else ที่ดีเสมอไป

4. สวิตช์

หากเรามีหลายกรณีให้เลือกเราสามารถใช้คำสั่งสลับได้

ลองดูตัวอย่างง่ายๆอีกครั้ง:

int count = 3; switch (count) { case 0: System.out.println("Count is equal to 0"); break; case 1: System.out.println("Count is equal to 1"); break; default: System.out.println("Count is either negative, or higher than 1"); break; }

ข้อความif / elseสามรายการขึ้นไปอาจอ่านได้ยาก ในฐานะที่เป็นวิธีแก้ปัญหาที่เป็นไปได้เราสามารถใช้สวิตช์ดังที่เห็นด้านบน

และโปรดทราบว่าสวิตช์มีขอบเขตและข้อ จำกัด ในการป้อนข้อมูลที่เราต้องจำไว้ก่อนใช้งาน

5. ลูป

เราใช้การวนซ้ำเมื่อเราต้องใช้รหัสเดิมซ้ำหลาย ๆ ครั้งติดต่อกัน

มาดูตัวอย่างการเทียบเคียงสำหรับและในขณะที่ประเภทของลูป:

for (int i = 1; i <= 50; i++) { methodToRepeat(); } int whileCounter = 1; while (whileCounter <= 50) { methodToRepeat(); whileCounter++; } 

โค้ดทั้งสองบล็อกด้านบนจะเรียกmethodToRepeat 50 ครั้ง

6. หยุดพัก

เราจำเป็นต้องใช้ตัวแบ่งเพื่อออกจากลูปก่อนเวลา

มาดูตัวอย่างสั้น ๆ :

List names = getNameList(); String name = "John Doe"; int index = 0; for ( ; index < names.length; index++) { if (names[index].equals(name)) { break; } }

ที่นี่เรากำลังมองหาชื่อในรายชื่อและเราต้องการหยุดค้นหาเมื่อพบแล้ว

โดยปกติการวนซ้ำจะเสร็จสิ้น แต่เราใช้การหยุดตรงนี้เพื่อลัดวงจรและออกก่อนเวลา

7. ดำเนินการต่อ

ใส่เพียงแค่ดำเนินการต่อหมายถึงการข้ามส่วนที่เหลือของลูปที่เราอยู่:

List names = getNameList(); String name = "John Doe"; String list = ""; for (int i = 0; i < names.length; i++) { if (names[i].equals(name)) { continue; } list += names[i]; }

ที่นี่เราข้ามการต่อท้ายชื่อที่ซ้ำกันในรายการ

ดังที่เราได้เห็นที่นี่การแบ่งและดำเนินการต่ออาจเป็นประโยชน์เมื่อทำซ้ำแม้ว่ามักจะสามารถเขียนซ้ำได้ด้วยคำสั่งreturnหรือตรรกะอื่น

8. สรุป

ในบทความสั้น ๆ นี้เราได้เรียนรู้ว่าโครงสร้างการควบคุมคืออะไรและจะใช้มันเพื่อจัดการการควบคุมโฟลว์ในโปรแกรม Java ของเราได้อย่างไร

โค้ดทั้งหมดที่นำเสนอในบทความนี้มีอยู่บน GitHub