我期待這樣的代碼: double valore = 20.775;
BigDecimal c = new BigDecimal(valore);
c = c.setScale(2, RoundingMode.HALF_UP);
System.out.println(c.doubleValue());
返回20.78,但它返回20.77代替。 這是錯誤嗎?或者
我正在用Java編寫一個程序來查看Benford法則是否真的如此。我使用的是BigDecimal,但是自從我實現它之後就出現了一個錯誤。 import java.lang.*;
import java.math.BigDecimal;
public class BenfordLaw {
public static int oneornot(BigDecimal number) {
我正在尋找一種精確的方法來在Java中乘以兩個浮點數,並且我讀到應該使用BigDecimal,但它不能按預期工作。我究竟做錯了什麼? 我的代碼: BigDecimal a = new BigDecimal(3.53);
BigDecimal b = new BigDecimal(3.59);
BigDecimal c = a.multiply(b);
System.out.println(
請幫我設置BigDecimal的輸出。例如: 我需要輸出長度小於8位數字的數字,如下所示:「12345678」,如果多則輸入:「1,2345Å+ 9」。 toPlainString();
toEngineeringString();
toString();
是否按預期工作 方法並不:下面 public class TestBigDecimalOutput {
public st