我無法確定爲什麼這兩個函數的行爲不同。我可以只使用符號或我自己的常量,但我很想知道這裏發生了什麼(如果我做的不好)。病例陳述中的類
def convert(value, type)
case type
when Integer
value.to_i
when String
value.to_s
else
value
end
end
def convert_with_if(value, type)
if (type == Integer)
value.to_i
elsif (type == String)
value.to_s
else
value
end
end
n = 4.4
p convert(n, Integer) #=> 4.4
p convert_with_if(n, Integer) #=> 4