Scala ทำ ... ในขณะที่ห่วง
ซึ่งแตกต่างจากวงในขณะที่ด้านหน้าของวงทดสอบสภาพ loop, Scala ภาษาทำ ... ในขณะที่ห่วงคือการตรวจสอบสภาพของในตอนท้ายของวง
ทำ ... ในขณะที่วงจะคล้ายกับห่วงขณะ แต่ทำ ... ในขณะที่วงจะให้การดำเนินการอย่างน้อยวงจร
ไวยากรณ์
ภาษาสกาล่าในขณะที่วงไวยากรณ์:
do { statement(s); } while( condition );
แผนภูมิการไหล
โปรดทราบว่าการแสดงออกเงื่อนไขปรากฏที่ส่วนท้ายของวงเพื่อให้คำสั่งวง (s) จะถูกดำเนินการอย่างน้อยหนึ่งครั้งก่อนที่จะอยู่ในสภาพที่มีการทดสอบ
ถ้าเงื่อนไขเป็นจริงการไหลของการควบคุมกระโดดกลับข้างต้นไม่และจากนั้นอีกครั้งรันคำสั่งวง (s)
กระบวนการนี้ซ้ำจนกว่าเงื่อนไขที่กำหนดจะกลายเป็นเท็จ
ตัวอย่าง
object Test { def main(args: Array[String]) { // 局部变量 var a = 10; // do 循环 do{ println( "Value of a: " + a ); a = a + 1; }while( a < 20 ) } }
ดำเนินการออกผลโค้ดข้างต้น:
$ scalac Test.scala $ scala Test value of a: 10 value of a: 11 value of a: 12 value of a: 13 value of a: 14 value of a: 15 value of a: 16 value of a: 17 value of a: 18 value of a: 19