Perl 條件語句

Perl 條件語句是通過一條或多條語句的執(zhí)行結(jié)果(True或者False)來決定執(zhí)行的代碼塊。

可以通過下圖來簡單了解條件語句的執(zhí)行過程:

注意,數(shù)字 0, 字符串 '0' 、 "" , 空 list () , 和 undef 為 false ,其他值均為 true。 true 前面使用 !not則返回 false 。

Perl 提供了下拉的條件語句:

語句描述

if 語句

一個 if 語句 由一個布爾表達式后跟一個或多個語句組成。

if...else 語句

一個 if 語句 后可跟一個可選的 else 語句,else 語句在布爾表達式為假時執(zhí)行。

if...elsif...else 語句

您可以在一個 if 語句后可跟一個可選的 elsif 語句,然后再跟另一個 else 語句。

unless 語句

一個 unless 語句 由一個布爾表達式后跟一個或多個語句組成。

unless...else 語句。

一個 unless 語句 后可跟一個可選的 else 語句。

unless...elsif..else statement

一個 unless 語句 后可跟一個可選的 elsif 語句,然后再跟另一個 else 語句。

switch 語句

在最新版本的 Perl 中,我們可以使用 switch 語句。它根據(jù)不同的值執(zhí)行對應的代碼塊。

三元運算符 ? :

我們可以使用 條件運算 ? : 來簡化 if...else 語句的操作。通常格式為:

Exp1 ? Exp2 : Exp3;

如果 Exp1 表達式為 true ,則返回 Exp2 表達式計算結(jié)果,否則返回 Exp3。

實例如下所示:

#!/usr/local/bin/perl
 
$name = "W3Cschool教程";
$favorite = 10;     # 喜歡數(shù)

$status = ($favorite > 60 )? "熱門網(wǎng)站" : "不是熱門網(wǎng)站";

print "$name - $status\n";

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

W3Cschool教程 - 不是熱門網(wǎng)站