Nullとnilの違い

niffy
2022-08-26
niffy
2022-08-26

はじめに

こんにちは!最近rubyを使用し始めて、nullと同じ感覚でnilを使用していましたが、どんな違いがあるかふと気になったので調べてみました。

違い

結論、下記記事にもあるように意味合い的な違いはないようです。

null」と「nil」はどちらも「存在しない」ことを意味しており、語源の違いや品詞としての違いこそありますが、意味合い自体は変わりません。 
https://style.potepan.com/articles/29434.html

では、「語源や品詞としての違い」についてもう少し詳しく見てみましょう。

■nullの意味
・ラテン語のnullusの語尾が抜け落ちたもの
・関係代名詞的形容詞として使用する
ex. null argument(nullな引数)

■nilの意味
・ラテン語のnihilが転じたもの
・名詞や副詞として使用する
ex result was nil(結果はゼロだった)

ざっと上記の違いがあります。
nullとnilが同居している言語は少ないですが、SwiftやObjective-Cなどでは使い分ける必要があるそうなので、品詞としての違いを覚えておくと覚える際にイメージしやすいかもしれません。

終わりに

普段何気なく使用している単語でも、意味を調べてみると知らなかったことも多く面白いですね!今後も、語源等について気になったことがあれば、調べて記事にできたらと思います。