Perl 條件語句
Perl 條件語句是通過一條或多條語句的執行結果(True或者False)來決定執行的代碼塊。
可以通過下圖來簡單瞭解條件語句的執行過程:
注意,數字 0, 字串 '0' 、 "" , 空 list () , 和 undef 為 false ,其他值均為 true。 true 前面使用 ! 或 not則返回 false 。
Perl 提供了下拉的條件語句:
語句 | 描述 |
---|---|
一個 if 語句 由一個布爾運算式後跟一個或多個語句組成。 | |
一個 if 語句 後可跟一個可選的 else 語句,else 語句在布爾運算式為假時執行。 | |
您可以在一個 if 語句後可跟一個可選的 elsif 語句,然後再跟另一個 else 語句。 | |
一個 unless 語句 由一個布爾運算式後跟一個或多個語句組成。 | |
一個 unless 語句 後可跟一個可選的 else 語句。 | |
一個 unless 語句 後可跟一個可選的 elsif 語句,然後再跟另一個 else 語句。 | |
在最新版本的 Perl 中,我們可以使用 switch 語句。它根據不同的值執行對應的代碼塊。 |
三元運算符 ? :
我們可以使用 條件運算 ? : 來簡化 if...else 語句的操作。通常格式為:
Exp1 ? Exp2 : Exp3;
如果 Exp1 運算式為 true ,則返回 Exp2 運算式計算結果,否則返回 Exp3。
實例如下所示:
實例
#!/usr/local/bin/perl
$name = "IT研修";
$favorite = 10; # 喜歡數
$status = ($favorite > 60 )? "熱門網站" : "不是熱門網站";
print "$name - $status\n";
執行以上程式,輸出結果為:
IT研修 - 不是熱門網站