我完全是ruby的初学者,所以这是一个非常新手的问题。
我正在尝试连接一个字符串和一个浮点值,如下所示,然后打印它。
puts " Total Revenue of East Cost: " + total_revenue_of_east_cost
total_revenue_of_east_cost是一个保存浮点值的变量,我如何打印它?
发布于 2009-12-21 21:31:02
这不完全是级联,但它可以完成您想要做的工作:
puts " Total Revenue of East Cost: #{total_revenue_of_east_cost}"
从技术上讲,这是插值。不同之处在于,连接添加到字符串的末尾,而as插值计算一些代码并将其插入到字符串中。在这种情况下,插入出现在字符串的末尾。
Ruby将计算字符串中大括号之间的任何内容,其中左大括号前面有一个八角符号。
发布于 2009-12-21 21:35:36
斯蒂芬·多伊尔的答案是,使用一种称为“字符串插值”的技术是正确的,也可能是最简单的解决方案,但是还有另一种方法。通过调用对象的to_s方法,可以将该对象转换为字符串进行打印。所以下面的方法也是可行的。
puts " Total Revenue of East Cost: " + total_revenue_of_east_cost.to_s
发布于 2009-12-22 03:16:23
对于您的示例,您可能需要比to_s方法更具体的内容。毕竟,浮点数上的to_s通常会包含比您希望显示的精度更高或更低的精度。
在这种情况下,
puts " Total Revenue of East Coast: #{sprintf('%.02f', total_revenue_of_east_coast)}"
可能会更好。#{}可以处理任何ruby代码,所以你可以使用sprintf或任何其他你喜欢的格式化方法。
https://stackoverflow.com/questions/1940106
复制相似问题