unless:和if相反,条件为假时执行代码,其他用法一样。
until:与while相反,条件为假时执行。
表达式修饰符:在表达式后面加上if、foreach等(像倒装句),等效有{}的if、foreach等。
例:
print "$n is a negative number\n" if$n<0;
&error("Invalid input") unless &valid($input);
$i *= 2 until $i>$j;
print " ", ($n += 2) while $n<10;
&greet($_) foreach @person;
裸块:限定变量的作用范围,使变量只是这段之内的临时变量。
例:
{
my $root = sqrt 4;
print "The square root of 4 is $root\n";
}
elsif字句:和其他语言的elseif一样,只是单词写法不同。
例:
if (条件){
...;
}elsif(条件){
...;
}elsif(条件){
...;
}else{
...;
}
自增与自减:和其他语言一样。
$i++ | 等效i=i+1,先操作,i再自增 |
$i-- | 等效i=i-1,先操作,i再自减 |
++$i | 等效i=i+1,i先自增,再操作 |
--$i | 等效i=i-1,i先自增,再操作 |
循环控制:
last | 跳出整个循环,相当于break |
next | 跳出当前循环,相当于continue |
redo | 重新执行这次循环 |
条件操作符(三目运算符):和C一样。
例:
表达式1?表达式2:表达式3;
如果表达式1为真,执行表达式2,假就执行表达式3.
逻辑操作符:&&(与)、||(或)、//(定义或)