Perl UNLESS...ELSIF 語(yǔ)句

Perl 條件語(yǔ)句 Perl 條件語(yǔ)句

一個(gè) unless 語(yǔ)句后可跟一個(gè)可選的 elsif 語(yǔ)句,然后再跟另一個(gè) else 語(yǔ)句。

這種條件判斷語(yǔ)句在多個(gè)條件的情況下非常有用。

在使用 unless , elsif , else 語(yǔ)句時(shí)你需要注意以下幾點(diǎn)。

  • unless 語(yǔ)句后可以跟上 0 個(gè) 或 1 個(gè) else 語(yǔ)句,但是 elsif 后面必須有 else 語(yǔ)句。

  • unless 語(yǔ)句后可以跟上 0 個(gè) 或 1 個(gè) elsif 語(yǔ)句,但它們必須寫(xiě)在 else 語(yǔ)句前。

  • 如果其中的一個(gè) elsif 執(zhí)行成功,其他的 elsif 和 else 將不再被執(zhí)行。

語(yǔ)法

語(yǔ)法格式如下所示:

unless(boolean_expression 1){
   # 在布爾表達(dá)式 boolean_expression 1 為 false 執(zhí)行
}
elsif( boolean_expression 2){
   # 在布爾表達(dá)式 boolean_expression 2 為 true 執(zhí)行
}
elsif( boolean_expression 3){
   # 在布爾表達(dá)式 boolean_expression 3 為 true 執(zhí)行
}
else{
   #  沒(méi)有條件匹配時(shí)執(zhí)行
}

實(shí)例

#!/usr/bin/perl

$a = 20;
# 使用 unless 語(yǔ)句檢測(cè)布爾表達(dá)式
unless( $a  ==  30 ){
    # 布爾表達(dá)式為 false 時(shí)執(zhí)行
    printf "a 的值不為 30\n";
}elsif( $a ==  30 ){
    # 布爾表達(dá)式為 true 時(shí)執(zhí)行
    printf "a 的值為 30\n";
}else{
    # 沒(méi)有條件匹配時(shí)執(zhí)行
    printf "a  的 值為 $a\n";
}

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

a 的值不為 30

Perl 條件語(yǔ)句 Perl 條件語(yǔ)句