thể trùng lặp:
ArithmeticException thrown during BigDecimal.divideChia BigDecimals kết quả trong ArithmeticException
Điều này dẫn đến ArithmeticException: http://ideone.com/RXeZw
Cung cấp một quy mô và phương thức làm tròn sẽ cho tôi kết quả sai. Ví dụ này sẽ xuất 50,03%. Làm thế nào để tròn này một cách chính xác?
Để tham khảo dễ dàng hơn, đây là đoạn code:
BigDecimal priceDiff = BigDecimal.ONE
.subtract(new BigDecimal(9.99)
.divide(new BigDecimal(19.99)))
.multiply(new BigDecimal(100));
System.out.println(priceDiff.toPlainString());
có, tôi chỉ bị nhầm lẫn về tất cả các số sau :-) – dtrunk
@dtrunk Tôi tìm thấy bằng cách sử dụng 'double' ít khó hiểu hơn. ;) –
Tôi không thể sử dụng gấp đôi vì nó sẽ gây ra quá nhiều thay đổi trong mã – dtrunk