更新時間:2020-07-24 15:52:59 來源:動力節點 瀏覽5284次
在java中的Math類中有三種方法對浮點數取整
floor//向下取整
ceil//向上取整
round//四舍五入取整
例如:
Math.floor(1.3);//1
Math.floor(1.7);//1
Math.ceil(1.3);//2
Math.ceil(1.7);//2
Math.round(1.3);//1
Math.round(1.7);//2
很簡單的辦法。
這個取整有一個很好的應用
例如:1.736向下取整保留兩位小數,應該如何辦?
一種直接辦法就是用BigDecimal.setScale().doubleValue()的方法(具體如何做看我上一篇日志java保留兩位小數),這樣子比較麻煩,因為用到大浮點數了,也會出現7-8位小數突然多出來一個1。
那有沒有簡單辦法?
當然,把1.736*100=173.6
然后Math.floor(173.6)=173
然后再173/100=1.73這樣子就可以了。
或者:1.734向上保留兩位小數,精確到0.05,這個時候用大浮點數也要先乘以2再保留,然后再除以2.
但我們完全可以直接乘以20,然后Math.ceil(1.734*20)/20這樣子就是最終結果了。。
以上就是動力節點java培訓機構的小編針對“Java對浮點數取整方法floor”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習