2012-09-26 25 views
1

假設我有一個方法,如:確保紅寶石將把數字爲小數,而不是花車

def calculate(alpha, beta) 
    # do stuff 
end 

如何確保當我打電話calculate(1.0,2.0)它將始終把參數爲小數,而不是作爲浮筒或整數?

+0

你說的是'Decimal'包嗎?它已被「Flt」包所取代。 – bdares

+0

我的意思是將類型視爲'BigDecimal'類型,我相信它仍然受支持。 –

回答

4

如果您正在尋找PARAMS爲一個BigDecimal要處理,你可以使用以下命令:

require 'bigdecimal' 
    require 'bigdecimal/util' 

    def calculate(alpha, beta) 
     alpha_bigdec = alpha.to_d 
     beta_bigdec = beta.to_d 
    end 
1

還有就是BigDecimal類在Ruby標準庫

def calculate(alpha, beta) 
    alpha = BigDecimal.new alpha 
    beta = BigDecimal.new beta 

    # rest of method here 
end 

然後,您可以參考BigDecimal documentation看你可以用它來操作就可以了哪些方法。一些我能想到的把我的頭的頂部to_sto_ito_raddsub