Ruby についての問題です。
以下の条件のもとで x == x
が false
になることはあるか。
-
x
は左辺・右辺ともローカル変数である -
x
には組込みクラスのインスタンスが代入されている -
==
は再定義されていない
答えはここをめくってね
ある。x
に NaN が代入されているとき。
NaN は Float
のインスタンスであり,0.0/0.0
のような計算不能な演算の結果として得られるオブジェクト。そのため,たとえ自分自身とでも「数値的に等しい」とは言えない。