ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
当某个表达式为true的时候 while 循环被执行。就像if 语句,它的表达式必须返回一个布尔类型值,当然,可以通过Std.bool() 强制转换。 while循环有两种代表性的方式:在执行进一步的循环代码之前执行评估,和执行循环之后再进行条件评估。后者通常是 do while 循环,do 关键字是必须的: ~~~ // while loop while ( someVar == someValue ) { // do code } // do while loop do { // do code } while ( someVar == someValue ); ~~~ 就像 if 语句,如果只有一个单行代码,语句块的花括号并不是必须的。 while 和 do ... while 值ijande区别是,在while循环里,只有评估表达式返回true 的时候才会执行循环。而do...while循环中,无论表达式评估为ture或false,循环至少会执行一次,但是只有表达式为true的时候才会重复执行。 ~~~ class WhileLoops { public static function main() { var myInt : Int = 0; // will print to screen ten times while ( myInt < 10 ) trace( “displayed “ + ( ++myInt ) + “ times” ); // will skip as myInt == 10 while ( myInt < 10 ) trace( “displayed “ + ( ++myInt ) + “ times” ); // will display once as myInt will be bigger than 0 // though this is not evaluated until after one iteration do trace( “displayed “ + ( 10 - --myInt ) + “ times” ) while ( myInt < 0 ); } } ~~~ 如例子中看到的,do...while循环中执行的一行代码不用以分号结束。就像 if 语句一样,一个 do...while循环不需要对单行的语句添加分号。事实上,编译器会自动为其添加。但是,对于语句块,仍然需要应用分号。