สกาล่าไม่มีbreak
หรือcontinue
ดังนั้นพฤติกรรมวนรอบบางอย่างจึงใช้ความคิดอีกเล็กน้อย
การสิ้นสุดลูปก่อนกำหนดต้องใช้การเรียกซ้ำแบบหางข้อยกเว้นหรือscala.util.control.Breaks
(ซึ่งใช้ข้อยกเว้น)
เหตุผลสำหรับเรื่องนี้ก็คือว่าgoto
พวกเขาเป็นโครงสร้างการไหลที่ไม่ชัดเจนการไหลและสามารถทำได้ในวิธีที่ดีกว่าและน่าแปลกใจน้อยกว่า
return
แต่ดูเหมือนขัดแย้งกันเหล่านั้นสามารถนำมาใช้สำหรับ
เหตุใดสกาล่าจึงละเว้นbreak
และcontinue
ไม่ทำเช่นนั้นreturn
?
breakable { for { break; } }
แต่ภายหลังและมีแนวโน้มที่จะห่างไกลจากที่มีประสิทธิภาพ
break
และcontinue
มีอยู่ในคำถามของคุณและในลิงก์ในคำถามของคุณ คำถามสำหรับreturn
คือสิ่งที่คำถามที่ฉันเชื่อมโยงเกี่ยวกับและได้รับคำตอบอย่างน้อยที่สุดในคำตอบที่ได้รับการโหวตด้านบนยอมรับ หากทั้งสองคำตอบรวมกันไม่ตอบคำถามของคุณคุณอาจแก้ไขคำถามเพื่อให้ความกระจ่างได้
break
continue
return