三元運算符
2013-08-26 15:22
三元運算符
另外也有一種非常類似 if {...} else {...} 的運算符,我們稱為三元運算符。他的寫法也就是像這樣:
my ($a, $b) = (42, 22);
my $max = ($a > $b) ? $a : $b;
print "$max\n";
首先我們把串列 (42, 22) 指定給變數 $a 跟 $b,接著我們要找到兩個值中較大的一個,於是利用判斷式 ($a > $b) 來檢查兩個數字之間的關係。如果 $a > $b 成立,那麼 $max 就是 $a,否則就是 $b。所以很明顯的,上面的三元運算符也可以改寫成這樣:
my ($a, $b) = (44. 22);
if ($a > $b) { $max = $a } else { $max = $b }
print "$max\n";
my $return = cal(5);
print "$return\n";
sub cal {
my $param = shift;
($param > 4) ? $param*2 : $param**2; # 利用參數來判斷回傳值的運算方式
}