2

让我们说:

n = 5
n.to_s
p n

的结果n仍然是5而不是"5"n用我新转换的变量替换原始变量的最短方法是什么,n而无需执行以下操作:

n = 5
a = n.to_s
p a

为什么 Ruby 不允许我调用to_s!对象?

4

1 回答 1

8

一个整数不能神奇地将自己变成一个字符串。方法(包括!方法)只能导致对象值发生变化,而不能导致类型发生变化。此外,整数是不可变的——整数本身不能被修改(但指向它的名称可以重新指向一个新的整数)。

因此,to_s!不存在,而是您需要通过编写例如重新绑定变量

n = n.to_s
于 2013-08-27T05:09:41.560 回答