2010-07-19 29 views

回答

16

這是相當簡單,真的:should ==發送==消息被測試者,should eql發送eql?消息被測試者。換句話說:兩個不同的測試發送兩個完全不同的消息,它們調用兩個完全不同的方法,從而完成兩個完全不同的事情。特別是,eql?==更嚴格,但比equals?更嚴格。

15

他們通常是等價的,但並非總是如此:

1 == 1.0 # => true 
1.eql? 1.0 # => false 
+0

touche ... touche。 .. – 2010-07-19 22:35:05

相關問題