В чем разница между
case item.class
when MyClass
# do something here
when Array
# do something different here
when String
# do a third thing
end
и
case item.class
when MyClass.class
# do something here
when Array.class
# do something different here
when String.class
# do a third thing
end
По какой-то причине первая из этих работ иногда и вторая не работает, а в других случаях вторая работает, а первая - нет. Зачем? Какой из них "правильный" способ сделать это?