2011-08-19 56 views
3

我有一個double變量,它輸出一些值。例子:在Java中舍入值

  • 如果value = 62.42,我想值四捨五入到62

  • 如果value = 62.99,我想值四捨五入到62

無論小數點出現什麼,它都應該只顯示整個值。

回答

0

你試過把這個十進制值賦給一個整數嗎?像這樣:

int val = value; //where value = 62.42; 
2

下產量62在這兩種情況下。

public class Round { 
    public static void main(String[] args) throws Exception { 
     System.out.println((int)Math.floor(62.99)); 
     System.out.println((int)Math.floor(62.42)); 
    } 
} 

使用Math.floor

或者你可以使用Math.round(Math.floor(double a))

+0

謝謝....我想這 – sagarg

0
double doubleRounded = Math.round(doubleWithDecimals); 
double doubleFloored = Math.floor(doubleWithDecimals); 
8

Math.floor(double a)
返回最大的(最接近正無窮大)double值小於小於或等於的說法等於一個數學整數。

1

將其作爲int來投射。這會將double值截斷爲整數部分,丟棄數字的任何小數部分。

例如。

double d = 1.7; 
int i = (int) d; // i = 1 
+0

謝謝..................... – sagarg

+0

如果double值是Thgat不起作用大到適合一個整數。然而,當你知道你只使用足夠小的數字時,這是最簡單的方法。 –