如果我作出這樣的簡單的返回這樣處理紅寶石浮法像java
double example()
{
double i = 999999999;
return i;
}
雙值的函數的輸出將是:
例如()=> 9.99999999E8
我不不知道如何用紅寶石獲得它..有人可以幫助我嗎?
如果我作出這樣的簡單的返回這樣處理紅寶石浮法像java
double example()
{
double i = 999999999;
return i;
}
雙值的函數的輸出將是:
例如()=> 9.99999999E8
我不不知道如何用紅寶石獲得它..有人可以幫助我嗎?
要只是把它變成一個浮動,你可以使用to_f
,顯示在科學記數法格式字符串會有所幫助:
>> 999999999.to_f #=> 999999999.0
>> "%E" % 999999999 #=> "1.000000E+09"
對於您的示例,請使用浮點文字而不是整數文字。也就是說,999999999.0型或9.99999999e8代替999999999如果它是一個變量,而不是(例如,x),使用x.to_f:
def f()
999999999.0
end
或
def f()
(999999999).to_f
end
就不可能獲得相同的值作爲java嗎? (9.99999999E8),因爲我需要從999999999獲得確切的9.99999999E8 –
您是。 (999999999).to_f給出9.99999999E8。或者你的意思是這種格式? Ruby不同地顯示數字。除了編寫自己的格式化函數外,沒有什麼可以做的,因爲沒有改變它的選項。 – c4757p
是不可能獲得與java相同的值? (9.99999999E8),因爲我需要從999999999準確獲得9.99999999E8 –
它只是以不同的方式顯示。例如,(「%.7E」%999999999.0)顯示「9.999999999E + 08」。我不知道是否有顯示設置將E + 08更改爲E8,但請在此處查看printf文檔:http://linux.die.net/man/3/printf – c4757p