簡體   English   中英

BigDecimal除法,帶有大量小數位

[英]BigDecimal divide with a large number of decimal places

我的問題很簡單

BigDecimal我想這樣做:

public static void main (String [] args) {
    System.out.println(new BigDecimal(1).divide(new BigDecimal(3));
}

我希望結果是這樣的: 0.333333333333333333333333333333333.......而不是0.33340.33

所有BigDecimal操作都可以設置精度(小數點后的位數)和舍入模式。

System.out.println(
    new BigDecimal(1).divide(new BigDecimal(3), 10, RoundingMode.HALF_UP));

將輸出0.3333333333 您可以創建MathContext對象來封裝此信息。 這很有用,因為您通常需要以相同的精度和舍入設置執行多個操作。

MathContext mc = new MathContext(10, RoundingMode.HALF_UP);
System.out.println(new BigDecimal(1).divide(new BigDecimal(3), mc));
System.out.println(new BigDecimal(1).divide(new BigDecimal(9), mc));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM