曲径通幽论坛

标题: 循环控制 -- continue 代码块 [打印本页]

作者: beyes    时间: 2012-7-18 19:20
标题: 循环控制 -- continue 代码块
continue 代码块也属于循环控制的一部分。它一般位于 while 循环的后面,它提供了类似于 for 循环的变量递增效果,即使在使用 next  语句时也无法阻止它的执行,考虑下面的代码:
[code=perl]#!/usr/bin/perl
use strict;
use warnings;

my $i = 1;

while ($i <= 10) {
    if ($i == 5) {
        print "\$i == $i\n";
        next;
    }
    print "$i ";
} continue {$i++;}[/mw_shl_code]
运行输出:
$ ./while.pl
1 2 3 4 $i == 5
6 7 8 9 10
上面的 if 判断中使用了 next 语句,按照原本的意思,它应该是直接跳到 while 的判断中去,但是最后由于添加了 continue 代码块,因此 next 这里不会起作用,而是去执行 continue 代码块中的内容,因此整个循环得以正常结束,否则是个死循环。




欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) Powered by Discuz! X3.2