java中取整
1. 關於java double 小數向上取整處理
public static double getCeil(double d,int n){
BigDecimal b = new BigDecimal(String.valueOf(d));
b = b.divide(BigDecimal.ONE,n,BigDecimal.ROUND_CEILING);
return b.doubleValue();
}
2. Java怎麼實現提取小數的整數部分的功能
Math類中提供了三個與取整有關的方法:ceil、floor、round,這些方法的作用與它們的英文名稱的含義相對應,例如,ceil的英文意義是天花板,該方法就表示向上取整,Math.ceil(11.3)的結果為12,Math.ceil(-11.3)的結果是-11;floor的英文意義是地板,該方法就表示向下取整,Math.ceil(11.6)的結果為11,Math.ceil(-11.6)的結果是-12;最難掌握的是round方法,它表示「四捨五入」,演算法為Math.floor(x+0.5),即將原來的數字加上0.5後再向下取整,所以,Math.round(11.5)的結果為12,Math.round(-11.5)的結果為-11。
3. java中的整除和取余有什麼細節。
在java中,取整的細節在於得到整數相除的結果的整數部分(不需要四捨五入),取余的細節在於得到兩個整數相除的結果的余數部分。
取整用符號'/'表示,取余用符號'%'表示。
4. 求解java中Math類中的取整方法
public static long round(double a)
返回最接近參數的 long 長整型。結果將四捨五入為整數,對結果調用 Math.floor函數, 並將所得結果強制轉換為 long 類型。
換句話說,結果等於以下表達式的值:
(long)Math.floor(a + 0.5d)
對於負數的四捨五入規則是 先把負數轉換為正數,四捨五入後,再轉換為負數
-2.6轉換為正數2.6,四捨五入2.6+0.5=3.1,然後再轉為負數-3.1
用Math.floor函數去掉小數部分為-3,然後強制轉換成長整型-3.
-2.4轉換為正數2.4,四捨五入2.4+0.5=2.9,然後再轉為負數-2.9
用Math.floor函數去掉小數部分為-2,然後強制轉換成長整型-2.
所以Math.round(-2.6)=-3,Math.round(-2.4)=-2.
5. java中如何取整
float類型的有,對doublejava.lang.Math.round方法就是四捨五入。
去尾法是java.lang.Math.floor
6. java怎麼計算一個整數長度(不含負數符號)
實現方法如下:
1 把這個數取絕對值
2 然後轉成字元串,然後用length函數獲取長度就行了。
7. java怎麼把double四捨五入
(1)首先我們想到用先乘以100取整後再除以100.0這種做法:
System.out.println(Math.round(4.015*100)/100.0);
執行結果為4.01,顯然沒有達到我們想要的結果。
(2)那用java.text.DecimalFormat呢?
System.out.println(new java.text.DecimalFormat("0.00").format(4.015));
System.out.println(new java.text.DecimalFormat("0.00").format(4.025));
執行結果都為4.02。
(3)用java.math.BigDecimal.
Math 類包含用於執行基本數學運算的方法,如初等指數、對數、平方根和三角函數。
提供用於執行任意精度整數演算法 (BigInteger) 和任意精度小數演算法 (BigDecimal) 的類。
double abc = 4.015; //4.025
System.out.println(new java.math.BigDecimal(abc).setScale(2,java.math.BigDecimal.ROUND_HALF_UP).doubleValue());
結果:4.01 (當使用4.025時結果為4.03)
看來還是達不到效果。
(4)用下面的方法:
System.out.println(Math.round(4.015*100 + 0.5)/100.0);
8. JAVA編程有一個小數,如何去掉小數部分
1、新建一個php文件,命名為test.php。
9. java求大於參數的整數用什麼函數
java中的三種取整函數
1.Math.floor
floor,英文原意:地板。
Math.floor 函數是求一個浮點數的地板,就是 向下 求一個最接近它的整數,它的值肯定會小於或等於這個浮點數。
Math.floor(-1.1): -2.0
Math.floor(-1.5): -2.0
Math.floor(-1.6): -2.0
Math.floor(0.1): 0.0
Math.floor(0.5): 0.0
Math.floor(0.6): 0.0
Math.floor(1.1): 1.0
Math.floor(11.5): 11.0
Math.floor(15.7): 15.0
Math.floor(-0.5): -0.0
2.Math.ceil
ceil,英文原意:天花板。
Math.ceil 函數執行的是 向上 取接近的整數,它返回的肯定會大於或等於函數參數。
Math.ceil(-1.1): -1.0
Math.ceil(-1.5): -1.0
Math.ceil(-1.6): -1.0
Math.ceil(0.1): 1.0
Math.ceil(0.5): 1.0
Math.ceil(0.6): 1.0
Math.ceil(1.1): 2.0
Math.ceil(1.5): 2.0
Math.ceil(1.6): 2.0
Math.ceil(-0.5): -1.0
3.Math.rint
Math.rint 函數返回最接近參數的整數,如果有2個數同樣接近,則會返回偶數的那個。
Math.rint(-1.1): -1.0
Math.rint(-1.5): -2.0
Math.rint(-1.6): -2.0
Math.rint(0.1): 0.0
Math.rint(0.5): 0.0
Math.rint(0.6): 1.0
Math.rint(1.1): 1.0
Math.rint(1.5): 2.0
Math.rint(1.6): 2.0
4.Math.round
round 方法,我們通常會說這個方法表示」四捨五入」,但是當參數為負數時,就不太好理解。
所以,以源碼的計算方式來理解會比較准確。
即將原來的數字加上0.5後再向下取整。
源碼大意:
Math.round(x) = Math.floor(x + 0.5)
Math.round(-1.1): -1
Math.round(-1.5): -1
Math.round(-1.6): -2
Math.round(0.1): 0
Math.round(0.5): 1
Math.round(0.6): 1
Math.round(1.1): 1
Math.round(1.5): 2
Math.round(1.6): 2