アマグラミング

プログラミング初心者が勉強したことを復習とメモがてら書いているだけです。

(82)===とはなんなのか、少しわかった。

以前case文の中は

 

if文でcase文を表すと

if 条件式 === 変数

 <文>

elsif 条件式 === 変数

 <文>

elsif

条件式 === 変数

 <文>

・・・

else

<文>

end

 

 

こんな風になると書きました。で

===ってなんなんだろう。

より厳密な==なんだろうか

というようなことを書きました

 

でもそうじゃないみたいですね。

例えば文字列だとか数値の場合===は==と同じ意味ですが、

正規表現の=~と同じ用にマッチしているかの判定をしたり右辺が

左辺のクラスかどうかなどのような、柔軟性のある演算子のようです。

だからどっちかってーと

厳密というよりは緩い。

 

p /あ/ === "ありがとう"

p String === "ありがとう"

p (1..10) === 5

 

これを実行すると

f:id:tiroru17:20170629152435p:plain