Perl 循环语句
任何编程语言都有三种执行结构,即顺序结构,条件结构和循环结构。
默认情况下,语句是按顺序执行的:函数中的第一个语句先执行,接着是第二个语句,依此类推 但有的时候,我们可能需要多次执行同一块代码。这就用到了循环结构
循环结构允许我们多次执行一个语句或语句组
下面是大多数编程语言中循环语句的流程图
循环语句中的真假值
-
数字 0, 字符串 '0' 、 "" , 空 list () , 和 undef 为 false
-
其他值均为 true
-
true 前面使用 ! 或 not 则返回 false
下面是 Perl 语言提供的循环类型
循环类型 | 描述 |
---|---|
while 循环 | 当给定条件为 true 时,重复执行语句或语句组 |
until 循环 | 重复执行语句或语句组,直到给定的条件为 true |
for 循环 | 多次执行一个语句序列,简化管理循环变量的代码 |
foreach 循环 | foreach 循环用于迭代一个列表或集合变量的值 |
do...while 循环 | 除了它是在循环主体结尾测试条件外,其他与 while 语句类似 |
嵌套循环 | 可以在 while、for 或 do..while 循环内使用一个或多个循环 |
循环控制语句
循环控制语句改变了代码的执行顺序,通过它你可以实现代码的跳转。
下面是 Perl 提供的循环控制语句
控制语句 | 描述 |
---|---|
next 语句 | 停止执行从next语句的下一语句开始到循环体结束标识符之间的语句 然后再返回到循环体的起始处开始执行下一次循环 |
last 语句 | 退出循环语句块,从而结束循环 |
continue 语句 | continue 语句块通常在条件语句再次判断前执行 |
redo 语句 | redo 语句直接转到循环体的第一行开始重复执行本次循环 |
goto 语句 | Perl 有三种 goto 形式:got LABLE,goto EXPR,和 goto &NAME |
无限循环
如果条件永远不为 false,则循环将变成无限循环
一般情况下,Perl 程序员偏向于使用 for(;;)
结构来表示一个无限循环
因为构成循环的三个表达式中任何一个都不是必需的,您可以将某些条件表达式留空来构成一个无限循环
#!/usr/bin/perl =pod file: mail.pl author: 简单教程(www.twle.cn) Copyright © 2015-2065 www.twle.cn. All rights reserved. =cut for(;;) { printf "循环会无限执行。\n"; }
你可以按下 Ctrl + C 键来终止循环。
当条件表达式不存在时,它被假设为 true,当然我们也可以设置一个初始值和增量表达式