'hello'.class == String # => true
'hello'.class === String # => false
'hello'.class.equal? String # => true
As far as I know, the equal? method has the strictest comparison test. Can someone explain why === returns false while equal? returns true here?