Perl redo 語句

Perl 循環(huán) Perl 循環(huán)

Perl redo 語句直接轉(zhuǎn)到循環(huán)體的第一行開始重復(fù)執(zhí)行本次循環(huán),redo語句之后的語句不再執(zhí)行,continue語句塊也不再執(zhí)行。

continue 語句可用在 while 和 foreach 循環(huán)中。

語法

語法格式如下所示:

redo [LABEL]

其中 LABEL 是可選的。

帶標(biāo)號(hào)修飾符LABEL的redo語句表示把循環(huán)控制流程直接轉(zhuǎn)到與標(biāo)號(hào)修飾符LABEL相關(guān)聯(lián)的語句塊的第一行處開始執(zhí)行,而不再執(zhí)行redo語句之后的語句和continue語句塊;

不帶標(biāo)號(hào)修飾符LABEL的redo語句表示把循環(huán)控制流程直接轉(zhuǎn)到當(dāng)前語句塊的第一行處開始執(zhí)行,而不再執(zhí)行redo語句之后的語句和continue語句塊;

如果是在for循環(huán)中或者是帶有continue語句塊,則for循環(huán)中的遞增列表和continue語句塊都不再被執(zhí)行;

流程圖

實(shí)例

#/usr/bin/perl
   
$a = 0;
while($a < 10){
   if( $a == 5 ){
      $a = $a + 1;
      redo;
   }
   print "a = $a\n";
}continue{
   $a = $a + 1;
}

執(zhí)行以上程序,輸出結(jié)果為:

a = 0
a = 1
a = 2
a = 3
a = 4
a = 6
a = 7
a = 8
a = 9

Perl 循環(huán) Perl 循環(huán)