Perl - ลูป

อาจมีสถานการณ์ที่คุณต้องเรียกใช้บล็อกโค้ดหลาย ๆ ครั้ง โดยทั่วไปคำสั่งจะดำเนินการตามลำดับ: คำสั่งแรกในฟังก์ชันจะถูกเรียกใช้งานก่อนตามด้วยคำสั่งที่สองและอื่น ๆ

ภาษาโปรแกรมจัดเตรียมโครงสร้างการควบคุมต่างๆที่ช่วยให้เส้นทางการดำเนินการซับซ้อนมากขึ้น

คำสั่งวนซ้ำช่วยให้เราดำเนินการคำสั่งหรือกลุ่มของคำสั่งได้หลายครั้งและต่อไปนี้เป็นรูปแบบทั่วไปของคำสั่งลูปในภาษาโปรแกรมส่วนใหญ่ -

ภาษาการเขียนโปรแกรม Perl จัดเตรียมประเภทของลูปต่อไปนี้เพื่อจัดการกับข้อกำหนดการวนซ้ำ

ซีเนียร์ ประเภทห่วงและคำอธิบาย
1 ในขณะที่วนซ้ำ

ทำซ้ำคำสั่งหรือกลุ่มของคำสั่งในขณะที่เงื่อนไขที่กำหนดเป็นจริง จะทดสอบเงื่อนไขก่อนที่จะดำเนินการร่างกายลูป

2 จนกว่าจะวนซ้ำ

ทำซ้ำคำสั่งหรือกลุ่มของคำสั่งจนกว่าเงื่อนไขที่กำหนดจะกลายเป็นจริง จะทดสอบเงื่อนไขก่อนที่จะดำเนินการร่างกายลูป

3 สำหรับห่วง

เรียกใช้ลำดับของคำสั่งหลาย ๆ ครั้งและย่อโค้ดที่จัดการตัวแปรลูป

4 ห่วงหน้า

foreach loop วนซ้ำบนค่ารายการปกติและตั้งค่าตัวแปร VAR เป็นแต่ละองค์ประกอบของรายการตามลำดับ

5 ทำ ... ในขณะที่วนซ้ำ

เช่นเดียวกับคำสั่ง while ยกเว้นว่าจะทดสอบเงื่อนไขที่ส่วนท้ายของตัวห่วง

6 ลูปที่ซ้อนกัน

คุณสามารถใช้ลูปหนึ่งหรือหลายวงในอีกอันในขณะที่สำหรับหรือทำ .. ในขณะที่ลูป

คำสั่งควบคุมลูป

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

Perl สนับสนุนคำสั่งควบคุมต่อไปนี้ คลิกลิงก์ต่อไปนี้เพื่อตรวจสอบรายละเอียด

ซีเนียร์ คำชี้แจงและคำอธิบายการควบคุม
1 คำสั่งต่อไป

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

2 คำสั่งสุดท้าย

ยุติคำสั่งลูปและโอนการดำเนินการไปยังคำสั่งทันทีตามลูป

3 ดำเนินการต่อ

บล็อกต่อไปจะดำเนินการก่อนที่เงื่อนไขจะถูกประเมินอีกครั้งเสมอ

4 ทำซ้ำคำสั่ง

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

5 คำสั่ง goto

Perl รองรับคำสั่ง goto ด้วยสามรูปแบบ: goto label, goto expr และ goto & name

ห่วงไม่มีที่สิ้นสุด

ลูปจะกลายเป็นลูปไม่มีที่สิ้นสุดหากเงื่อนไขไม่เคยเป็นเท็จ forloop ถูกใช้เพื่อจุดประสงค์นี้ เนื่องจากไม่มีทั้งสามนิพจน์ที่สร้างไฟล์for จำเป็นต้องมีการวนซ้ำคุณสามารถสร้างการวนซ้ำที่ไม่มีที่สิ้นสุดโดยปล่อยให้นิพจน์เงื่อนไขว่างเปล่า

#!/usr/local/bin/perl
 
for( ; ; ) {
   printf "This loop will run forever.\n";
}

คุณสามารถยุติการวนซ้ำแบบไม่มีที่สิ้นสุดข้างต้นได้โดยกดปุ่ม Ctrl + C

เมื่อไม่มีนิพจน์เงื่อนไขจะถือว่าเป็นจริง คุณอาจมีนิพจน์การเริ่มต้นและการเพิ่มขึ้น แต่ในฐานะโปรแกรมเมอร์มักใช้โครงสร้าง for (;;) เพื่อแสดงถึงการวนซ้ำที่ไม่มีที่สิ้นสุด