Ruby `+';:未将整数隐式转换为字符串(TypeError)
获取此错误:Ruby `+';:未将整数隐式转换为字符串(TypeError),ruby,Ruby,获取此错误: (`+': no implicit conversion of Integer into String (TypeError)) 这句话叫它: print "\tsize "+(package["size"] == nil ? "" : package["size"])+"\n"; 当package[“size”]不是nil时,它返回一个整数,您试图将它连接成一个字符串,而它不进
(`+': no implicit conversion of Integer into String (TypeError))
这句话叫它:
print "\tsize "+(package["size"] == nil ? "" : package["size"])+"\n";
当package[“size”]
不是nil时,它返回一个整数,您试图将它连接成一个字符串,而它不进行隐式类型转换
这里有一些方法可以让它发挥作用
解决方案1
"\tsize " + package['size'].to_s + "\n";
解决方案2
"\tsize #{package['size'].to_s}\n";
package[“size”]
是一个整数。将其更改为package[“size”]。\u
或使用字符串插值。@Kumar-为什么不使用“\tsize”+(package['size'])。直接更改为\u s+“\n”
?在解决方案2中,无需使用。更改为,这是隐式的。