論理値(ブール値)

広告

文字列や数値の他に特殊な値として論理値又はブール値と呼ばれるものがあります。論理値は個別の値を持っているわけではありません。数値又は文字列の値を2つのグループに分けたようなものと考えて下さい。

文字列や数値を論理値として区分した場合、真(true)または偽(false)のどちらかとして区分されます。文字列や数値がどちらに区分されるのかは次の規則に従います。

数値は 0 だけが偽(false)
0 以外は全て真(true)

数値の場合には0だけが偽(false)となり、0以外は真(true)となります。

文字列は空文字('')だけが偽(false)
空文字以外は全て真(true)

ただし文字の'0'は数値の0と同じなので結果的に文字の'0'は偽(false)

文字列の場合は空文字('')又は「'0'」の場合が偽(false)となり、それ以外は真(true)となります。文字列はシングルクオーテーションで囲った場合でもダブルクオーテーションで囲った場合でも同じです。

論理値は条件分岐の条件式などで使用されます。詳しくは条件分岐の箇所で解説しますが、条件式が真(true)なら個の処理を行い、条件式が偽(false)ならこちらの処理を行うといった使い方となります。

undef

Perlでは未定義値を表す「undef」と言う値が用意されています。「undef」も偽(false)となります。

具体的な使用法は条件分岐の箇所でご説明します。

( Written by Tatsuo Ikura )