Luaプログラミング入門 > 第4章 制御文 > if elseによる条件分岐 > 偽条件の判定


[Prev] [Next] [Up] [Contents][フレーム表示] [フレーム解除

偽条件の判定 応援する 

さて,次のようなコードを書いたらどのような実行結果となるでしょうか.

hoge = 1
if ( hoge ) then
        print("first")
end

hoge = 0
if ( hoge ) then
        print("second")
end

hoge = false
if ( hoge ) then
        print("third")
end

hoge = nil
if ( hoge ) then
        print("fourth")
end
実行結果
first
second

さて,カッコの中には何か式を書かなくてはなりませんが, この場合は変数名のhogeとしか書いてありません.これはどういう意味でしょうか.

実はこういった場合,カッコの中の値がfalse,nilであるかfalse,nil以外であるかで判定します. false,nilでない場合は処理を行い,そうでない場合は処理を行いません.

C言語との違い
  • 0は偽条件ではない

[Prev] [Next] [Up] [Contents][フレーム表示] [フレーム解除

このサイトについて|ヘルプ|Q&A|個人情報保護|プライバシーポリシー|利用規約|コメント・トラックバック規約|削除規程|広告掲載
Copyright (c) 2005-2007 Time Intermedia Corporation