案例相等運算符Range#===存在並使用Range#include?內部如果我沒有錯。爲什麼Array#===沒有被定義,而Range#===是?
# prints "foo"
case 2
when (1..3)
puts "foo"
end
我想知道爲什麼這不是Array類的情況......它打破了我認爲最不驚奇的原則。我希望這能夠奏效,但事實並非如此。
# does not print "foo"
case 2
when [1, 2, 3]
puts "foo"
end
它是出於性能原因嗎?
''[2,3,2] === [3,2,2]'因爲它們有相同的元素,只是不同的順序? – lcguida 2014-09-26 12:46:29