0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ファミチキで理解する0とNULL

Posted at

目的

巷でよく話題になるトイレットペーパーの画像

こちらは変数の値でよくわからないものが一瞬でわかるとても素晴らしい画像です。

しかし、時と場合によってはその例えが相応しくないかもしれないので、今回はお食事中でも話せるように、ファミチキを例に変数の値を説明してみようと思います。

ファミチキを題材にした理由は、

俺がnullと0の違いを世界一わかりやすく説明する

1 :名無しの話 :2020/02/09(日) 01:37:58 ID:yceNSwaK0
0
ぼく「ファミチキください」
ファミマ店員「すいませんファミチキ無いんですよ」

null
ぼく「ファミチキください」
セブン店員「すいませんファミチキ無いんですよ」

ほらわかっただろ?

という有名なコピペを膨らませてみたかったからです。

この記事の目的は初学者でも0とNULL、underfinedの違いがイメージできるようになるです。

ファミチキください

non-0-value

ぼく「ファミチキください」
ファミマ店員「あいよ! ファミチキ一丁!」

→ ファミマなのでファミチキを売ることができます(=変数が定義されている)。
在庫があるようなので、「ぼく」は無事にファミチキを買うことができました。
これが0でない値です(今回は負の数や小数については割愛)。

0

ぼく「ファミチキください」
ファミマ店員「申し訳ございませんが売り切れです」

→ ファミマなのでファミチキを売っていたようでした(=変数が定義されている)。
しかし、在庫がないので「ぼく」はファミチキを買えませんでした。

NULL

ぼく「ファミチキください」
ファミマ店員「当店はファミチキの取り扱いがありません」

→ ファミマですがそもそもファミチキを置いていないようです。
ですが、ファミリーマートなのでファミチキ自体は仕入れようと思えば仕入れることができます(ファミリーマートにファミチキ自体は定義されているので)。

Underfined

ぼく「ファミチキください」
セブン店員「ファミチキ? なんですかファミチキって?」

→ セブンイレブンなので、ファミチキを売ることはできません(定義されていない)。
冒頭のコピペでは「NULL」で説明されていましたが、こちらのほうが認識としては近いのではないでしょうか。

NaN

ぼく「ファミチキください」
ドジっ子ファミマ店員「はわわ~!!! ファミチキ売り場に間違えて炭火焼とりももタレを置いちゃっためぅ~>< これだとしばらくはファミチキを置いてもタレファミチキになっちゃって売り物にならないめぅ~><」

→ ファミチキ売り場にファミチキでないものが入っています。
しかも炭火焼とりももタレにファミチキを補充しても、タレがついてしまって売り物になりません。
NaNとは「非数」です。数で定義された変数に違うものを入れて、仮にそれに1を足してもそれは数にはなりません。使いものにならなくなってしまうので、タレファミチキを例に出してみました。

まとめ

状態
non-0-value ファミチキ買える
0 ファミチキ売り切れ
NULL ファミチキがないファミマ
Underfined セブンイでファミチキください
NaN ファミチキ売り場に炭火焼とりももタレ

という感じです。

ここまで読んでいただきありがとうございました。
クリスマスなどに使えるネタ……とかにでも使っていただけたら嬉しいです。

ちなみに私が一番好きなのはパリチキです。次点で揚げ鶏かな~!!!

0
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?