Twitterを開いたらトレンドに『null』とありました。いやTwitterマジかwって思ったんですが、さすがは天下のTwitter様。nullというワードがトレンド入りしているだけでバグっているわけではありませんでした。
プログラミングに携わっている方なら当たり前のように理解している(というよりしていてほしい)と思いますが、Nullと0は全くの別物です。
プログラミングを始めたばっかの学生の方も見ているかもしれませんので軽く説明をすると、Nullとは無の状態、0とはある変数に0というものが入っている状態です。
0~3までの数字が書かれたカードを1枚箱にいれます。これでたまたま0が書かれたカードが箱に入っている状態が0で、箱になにも入っていない空の状態がNullです。この箱が変数と呼ばれるものです。
0とNullを理解していないとせっかく書いたプログラムも正常に動かないよ~ということもあるので覚えておきましょう。
例えば、Excelを起動し『1』をA1、『0』をB1、『3』をC1celに入力し、&でつなげてみます。
当然D1には103と表示されます。3桁の数字の計算ができる人であれば、103と認識することができます。
では、0をNullに置き換えてみます。
とても数字には見えず、これはどうやっても103には見えませんね。このように、0とNullは別物で、0はれっきとした値なのです。
もっとわかりやすく言うと、財布に現金が1円もない状態が0、財布を忘れたせいで1円も現金がない状態がNullです。
余談ですが、PHPでは0==Nullであり0===Nullではないそうです。意味が分からんね。
もしこれからプログラマーになろうという人がいたらぜひ覚えていってください。ちなみに私はプログラミングをすることが多いですが、人間関係は良いものの仕事はクソofクソなので早く辞めたいです。プログラマーを目指す人はこれも覚えていってください…。