假设我有这样的方法:
def calculate(alpha, beta)
# do stuff
end
我如何确保当我调用calculate(1.0,2.0)
它时总是将参数视为小数而不是浮点数或整数?
假设我有这样的方法:
def calculate(alpha, beta)
# do stuff
end
我如何确保当我调用calculate(1.0,2.0)
它时总是将参数视为小数而不是浮点数或整数?
如果您正在寻找要作为 BigDecimal 处理的参数,您可以使用以下内容:
require 'bigdecimal'
require 'bigdecimal/util'
def calculate(alpha, beta)
alpha_bigdec = alpha.to_d
beta_bigdec = beta.to_d
end
BigDecimal
Ruby 标准库中有这个类
def calculate(alpha, beta)
alpha = BigDecimal.new alpha
beta = BigDecimal.new beta
# rest of method here
end
然后,您可以参考BigDecimal 文档以查看可以使用哪些方法对其进行操作。我能想到的几个是,,,,,to_s
等等。to_i
to_r
add
sub