在Java中,可以使用BigDecimal類來處理精確的十進制運算,并且可以設置精度。
BigDecimal類的構造方法可以接受一個字符串或者一個double類型的值作為參數。如果傳入一個double類型的值,它會自動轉換為一個字符串。然后,可以使用setScale方法來設置精度。
下面是一個例子:
import java.math.BigDecimal;
public class Main {
public static void main(String[] args) {
BigDecimal number1 = new BigDecimal("10.345");
BigDecimal number2 = new BigDecimal("20.1234");
BigDecimal result = number1.add(number2);
result = result.setScale(2, BigDecimal.ROUND_HALF_UP);
System.out.println(result); // 輸出30.47
}
}
在上面的例子中,我們創建了兩個BigDecimal對象number1和number2,分別表示10.345和20.1234。然后,我們使用add方法將這兩個數相加,并將結果存儲在result變量中。接下來,我們使用setScale方法設置精度為2,并使用ROUND_HALF_UP指定四舍五入的規則。最后,我們輸出結果30.47。
注意,setScale方法的第一個參數是精度,第二個參數是要使用的舍入模式。常用的舍入模式有: