0
我有以下作爲一個簡單的Ruby培訓計劃的一部分:Ruby`to_i!`方法不起作用。奇怪,爲什麼
返回一個錯誤:
user_num = gets.chomp
user_num.to_i!
正常工作:
user_num = Integer(gets.chomp)
正常工作:
user_num = gets.chomp.to_i
正常工作:
user_numX = gets.chomp
user_num = user_numX.to_i
下面是程序:
print "Integer please: "
#code insert location
if user_num < 0
puts "You picked a negative integer!"
elsif user_num > 0
puts "You picked a positive integer!"
else
puts "You picked zero!"
end
爲什麼一審返回一個錯誤,但其他三個做工精細任何想法?第一個應該可以正常工作。這是在擾亂我。謝謝。
'user_num.to_i!'不只是「返回一個錯誤」,它引發了一個特定的異常和錯誤信息:'NoMethodError:undefined method'to_i!'爲「2」:字符串(如果輸入「2」)。這恰好告訴你問題是什麼:類'String'沒有實例方法'to_i!'。仔細關注錯誤消息,當在SO問題中提及它們時,請包括消息的所有相關部分,包括髮生異常的行。 –