BigDecimal的divide方法報錯
報錯:
java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result.
報錯語句:
a.divide(b));
原因:
JAVA中如果用BigDecimal做除法的時候一定要在divide方法中傳遞第二個引數,定義精確到小數點後幾位,否則在不整除的情況下,結果是無限迴圈小數時,就會丟擲以上異常。
解決方法:
a.divide(b, 2, BigDecimal.ROUND_HALF_UP);
總結:
注意這個divide方法有兩個過載的方法,一個是傳兩個引數的,一個是傳三個引數的:
//兩個引數的方法://傳入除數@param divisor value by which this {@code BigDecimal} is to be divided. //傳入round的模式@param roundingMode rounding mode to apply. //三個引數的方法://傳入除數@param divisor value by which this {@code BigDecimal} is to be divided. //傳入精度@param scale scale of the {@code BigDecimal} quotient to be returned. //傳入round的模式@param roundingMode rounding mode to apply.
作者:Winter_Soldier
連結:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/430/viewspace-2806561/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- python: invalid value encountered in divide以及invalid value encountered in double_scalars報錯PythonIDE
- 幾個報錯的解決方法
- BigDecimalDecimal
- java中的BigDecimalJavaDecimal
- dbfread報錯ValueError錯誤解決方法Error
- hive使用報錯解決方法Hive
- 各種報錯處理方法
- ***XAMPP:報錯Unabletoloaddynamiclibrary的解決方法
- mongoDB的db.shutdownServer()報錯的解決方法MongoDBServer
- Pairwise Sum and DivideAIIDE
- Divide Two IntegersIDE
- BigDecimal使用注意的地方Decimal
- react元件內報implementation()方法錯誤!React元件
- yum groupinstall報錯,處理方法
- 安裝psutil模組報錯的解決方法
- HBase刪除列族報錯的解決方法
- D. Divide and EqualizeIDE
- Java的BigDecimal比較大小JavaDecimal
- Java 中比較 BigDecimal 的陷阱JavaDecimal
- imagick使用readImage報錯 Failed to read the file 或者沒有報錯內容的解決方法AI
- BigDecimal 詳解Decimal
- BigDecimal計算Decimal
- BigDecimal總結Decimal
- kaldi的編譯安裝與報錯解決方法編譯
- Nginx報504 gateway timeout錯誤的解決方法NginxGateway
- R語言的各種報錯及其解決方法R語言
- oracle ORA-01940 報錯的處理方法Oracle
- Nginx 報錯 504 Gateway Time-out 的解決方法NginxGateway
- ceph叢集安裝報錯解決方法
- RAC: SRVCTL and VIPCA 命令報錯解決方法PCA
- MRTG生成首頁報錯解決方法
- DBMS_METADATA報錯解決方法
- 在使用 zabbix 4 時, orabbix 會報錯的處理方法
- docker pull下載映象時的報錯及其解決方法Docker
- MongoDB報錯Insufficient free space for journal files的解決方法MongoDB
- PHP 方法重寫,引數不同,報錯: DeclarationPHP
- AS執行main()方法報錯:SourceSet with name ‘main‘ not foundAI
- windows update更新失敗報錯解決方法Windows