Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
下面的 ruby 代码没有按预期工作。它似乎无法识别1..3范围,只是读取else条件。如果我给了一个数字而不是一个范围,它虽然有效。不知道我哪里错了。
1..3
else
print "Enter your cost: " cost = gets.chomp case cost when 1..3 puts "inexpensive" when 3..5 puts "affordable" else puts "no comments" end
您正在尝试将字符串与整数范围进行匹配。那是行不通的。做一个整数。
cost = gets.chomp.to_i
你得到的输入gets总是一个字符串,所以它永远不会匹配一个数字范围。要将其转换为整数,请执行以下操作:
gets
cost = gets.to_i
你可以像这样直接把它放在case语句中
case gets.to_i