Java Math.round函數(shù)詳解
1.代碼如下:
public class TestMathRound {
public static void main(String[] args) {
System.out.println("小數(shù)點后第一位=5");
System.out.println("正數(shù):Math.round(11.5)=" + Math.round(11.5));//12
System.out.println("負(fù)數(shù):Math.round(-11.5)=" + Math.round(-11.5));//-11
System.out.println();
System.out.println("小數(shù)點后第一位<5");
System.out.println("正數(shù):Math.round(11.46)=" + Math.round(11.46));//11
System.out.println("負(fù)數(shù):Math.round(-11.46)=" + Math.round(-11.46));//-11
System.out.println();
System.out.println("小數(shù)點后第一位>5");
System.out.println("正數(shù):Math.round(11.68)=" + Math.round(11.68));//12
System.out.println("負(fù)數(shù):Math.round(-11.68)=" + Math.round(-11.68));//-12
}
}
2.結(jié)果如下,可以自己運行。

3.本來以為是四舍五入,取最靠近的整數(shù),查了網(wǎng)上說有四舍六入五成雙,最后還不如看源碼。源碼如下:
public static long round(double a) {
if (a != 0x1.fffffffffffffp-2) // greatest double value less than 0.5
return (long)floor(a + 0.5d);
else
return 0;
}
我們看到round函數(shù)會默認(rèn)加0.5,之后調(diào)用floor函數(shù),然后返回。floor函數(shù)可以理解為向下取整。

4.綜上,Math.round函數(shù)是默認(rèn)加上0.5之后,向下取整。
到此這篇關(guān)于Java Math.round函數(shù)詳解的文章就介紹到這了,更多相關(guān)Java Math.round函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java實戰(zhàn)之網(wǎng)上書店管理系統(tǒng)的實現(xiàn)
本文將利用Java語言實現(xiàn)網(wǎng)上書店管理系統(tǒng)。其功能一般包括:圖書信息管理、用戶信息管理、圖書購買、圖書訂單查看、圖書添加、圖書維護(hù)等等,感興趣的可以了解一下2022-06-06
java面向?qū)ο笤O(shè)計原則之單一職責(zé)與依賴倒置原則詳解
這篇文章主要介紹了java面向?qū)ο笤O(shè)計原則之單一職責(zé)與依賴倒置原則的分析詳解,有需要的朋友可以借鑒參考下,希望可以有所幫助,祝大家多多進(jìn)步早日升職加薪2021-10-10
詳解基于java的Socket聊天程序——服務(wù)端(附demo)
這篇文章主要介紹了詳解基于java的Socket聊天程序——服務(wù)端(附demo),具有一定的參考價值,感興趣的小伙伴們可以參考一下。2016-12-12
JavaEE中用response向客戶端輸出中文數(shù)據(jù)亂碼問題分析
這篇文章主要介紹了JavaEE中用response向客戶端輸出中文數(shù)據(jù)亂碼問題分析,需要的朋友可以參考下2014-10-10

