非常基本的Ruby放置和获取

时间:2012-01-30 02:20:39

标签: ruby string math

我有以下代码。但是我收到了一个错误。这应该是怎么写的。

puts 'What is your favourite number?'
number = gets.chomp
number = number.to_i + 1
puts "you would like " + number + 'much better' 

1 个答案:

答案 0 :(得分:6)

如果包含错误,它总是有帮助的。有两种方法可以解决该错误:

  1. 内插值:puts "you would like #{number} much better"
  2. 将其从数字转换为字符串:puts "you would like " + number.to_s + 'much better'
  3. 前一种#{...}语法将大括号的内容评估为Ruby,然后将to_s应用于结果,然后将其注入字符串。我的两个例子实际上是等价的。

    至于它失败的原因? +在Ruby中没有进行类型强制,实际上只有很少的隐式转换,与其他类似空格中的语言不同。