日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java取模多位数_JAVA大数类—基础操作(加减乘除、取模、四舍五入、设置保留位数)...

發布時間:2023/12/20 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java取模多位数_JAVA大数类—基础操作(加减乘除、取模、四舍五入、设置保留位数)... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

當基礎數據類型長度無法滿足需求時可以使用大數類

構造方法接受字符串為參數

1 BigInteger bInt = new BigInteger("123123");2 BigDecimal bDouble = new BigDecimal("123123.123123124");

基礎操作(取模使用divideAndRemainder方法,返回的數組第二個元素為余數):

BigDecimal在做除法時必須設定傳入精度(保留多少位小數),否則會出現異常:java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result。

除法還有兩個接受不同數量參數的方法:

接受兩個參數的方法:

@param divisor value by which this {@code BigDecimal} is to be divided.?傳入除數

@param roundingMode rounding mode to apply. 傳入round的模式

三個參數的方法:

@param divisor value by which this {@code BigDecimal} is to be divided. 傳入除數

@param scale scale of the {@code BigDecimal} quotient to be returned. 傳入精度

@param roundingMode rounding mode to apply. 傳入round的模式

round模式為小數取舍模式:

BigDecimal.ROUND_UP:最后一位如果大于0,則向前進一位,正負數都如此。

BigDecimal.ROUND_DOWN:最后一位不管是什么都會被舍棄。

BigDecimal.ROUND_CEILING:如果是正數,按ROUND_UP處理;如果是負數,按照ROUND_DOWN處理。例如,7.1->8;-7.1->-7。所以,這種近似的結果都會>=實際值。

BigDecimal.ROUND_FLOOR:跟BigDecimal_ROUND_CEILING相反。例如,7.1->7;-7.1->-8。這種處理的結果<=實際值。

BigDecimal.ROUND_HALF_DOWN:如果最后一位<=5則舍棄,如果>5, 向前進一位。如,7.5->7;7.6->8;-7.5->-7 。

BigDecimal.ROUND_HALF_UP:如果最后一位<5則舍棄,如果>=5, 向前進一位。反之舍棄。如,7.5->8;7.4->7;-7.5->-8 。 —>??(四舍五入)常用

BigDecimal.ROUND_HALF_EVEN:如果倒數第二位是奇數,按照BigDecimal.ROUND_HALF_UP處理;如果是偶數,按照BigDecimal.ROUND_HALF_DOWN來處理。如,7.5->8;8.5->8;7.4->7;-7.5->-8。

BigDecimal有一個setScale()方法,可以接受兩個參數

1、保留位數

2、round模式

輸出可以直接調用.toString();

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的java取模多位数_JAVA大数类—基础操作(加减乘除、取模、四舍五入、设置保留位数)...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。