2012-09-27 24 views
1

我想知道如何指示Java始終舍入給定數字。始終舍入數字

E.g:

1.08 rounds to 1 
1.88 rounds to 1 
1.999999999999 rounds to 1 
0.0002 rounds to 0 
123.77 rounds to 123 

有什麼建議?

在此先感謝! :)

+0

Math.floor是你正在尋找的功能。 –

+2

檢查[java.lang.Math API](http://docs.oracle.com/javase/6/docs/api/java/lang/Math.html),你應該能夠在那裏找到你需要的方法。 – basiljames

回答

7

這就是Math#floor does

返回最大的(最接近正無窮大)double值,該值小於或等於參數,並等於某個整數

+0

謝謝,它的工作! :d – MrD

3

我將使用Math.floor(double),而不是Math.round(double)

或者,如果你想圓朝0

,你可以只投
double d = 1.999999999999; 
long l = (long) d; 
0

Math.floor函數可以解決這個問題。

採用double,返回小於或等於參數且等於數學整數的最大(最接近正無窮大)double值。

如果你需要以不同的形式只投之後(即INT)

的規格在這裏,如果你很好奇它是如何工作的:http://docs.oracle.com/javase/6/docs/api/java/lang/Math.html

,如果你需要一個例子讓我知道,生病請你:)