論理値(ブール値)を記述する

Perl で扱える値には文字列や数値のほかに論理値またはブール値と呼ばれるものがあります。論理値は個別の値を持っているわけではありません。数値又は文字列の値を真(true)または偽(false)に分類します。ここでは Perl のプログラムの中で論理値を記述する方法について解説します。

(Last modified: )

論理値の使い方

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

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

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

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

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

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

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

論理値は条件分岐や繰り返し処理の条件式などで使用されます。詳しくは別のページで解説しますが、条件式を評価した結果として真(true)か偽(false)によって実行する処理を分けたり繰り返し処理を継続したりする場合に利用します。

また Perl では未定義値を表す undef と言う値が用意されています。 undef も偽(false)となります。具体的な使用法は条件分岐の箇所でご説明します。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。