java中的BigDecimal怎么使用

小億
88
2023-12-19 22:16:10
欄目: 編程語言

在Java中使用BigDecimal,需要先導(dǎo)入java.math.BigDecimal類。

  1. 創(chuàng)建BigDecimal對(duì)象: 可以使用以下方法來創(chuàng)建BigDecimal對(duì)象:
  • 使用字符串作為參數(shù):可以使用字符串表示數(shù)字,例如:“123.456”。

    BigDecimal bd = new BigDecimal("123.456");
    
  • 使用整數(shù)作為參數(shù):

    BigDecimal bd = new BigDecimal(123);
    
  • 使用雙精度浮點(diǎn)數(shù)作為參數(shù):

    BigDecimal bd = new BigDecimal(123.456);
    
  1. 進(jìn)行基本的數(shù)學(xué)運(yùn)算: BigDecimal類提供了一系列的方法來進(jìn)行數(shù)學(xué)運(yùn)算,例如加法、減法、乘法和除法等。這些方法會(huì)返回一個(gè)新的BigDecimal對(duì)象,而不會(huì)改變?cè)械膶?duì)象。例如:
BigDecimal bd1 = new BigDecimal("10");
BigDecimal bd2 = new BigDecimal("5");

BigDecimal sum = bd1.add(bd2); // 加法
BigDecimal difference = bd1.subtract(bd2); // 減法
BigDecimal product = bd1.multiply(bd2); // 乘法
BigDecimal quotient = bd1.divide(bd2); // 除法
  1. 設(shè)置精度: BigDecimal對(duì)象可以設(shè)置精度,即小數(shù)部分的位數(shù)??梢允褂胹etScale()方法來設(shè)置精度,該方法接受兩個(gè)參數(shù):要設(shè)置的位數(shù)和舍入模式。例如:
BigDecimal bd = new BigDecimal("123.456");
BigDecimal rounded = bd.setScale(2, RoundingMode.HALF_UP); // 設(shè)置精度為2,四舍五入

以上就是使用BigDecimal的基本方法。需要注意的是,由于BigDecimal對(duì)象是不可變的,所以每次進(jìn)行數(shù)學(xué)運(yùn)算會(huì)返回一個(gè)新的BigDecimal對(duì)象,而不會(huì)改變?cè)袑?duì)象的值。

0