package class01.object01;
import java.math.BigDecimal;
/**
*
* @create 2021-02-24 15:19
*/
public class Demo06 {
public static void main(String[] args) {
double d1=1.0;
double d2=0.9;
System.out.println(d1-d2);//0.09999999999999998,double是近似值存储
//BigDecimal,大的浮点数精确计算
BigDecimal bd1 = new BigDecimal("1.0");
BigDecimal bd2 = new BigDecimal("0.9");
//减法
BigDecimal r1=bd1.subtract(bd2);
System.out.println(r1);
//加法
BigDecimal r2=bd1.add(bd2);
System.out.println(r2);
//乘法
BigDecimal r3=bd1.multiply(bd2);
System.out.println(r3);
//除法
BigDecimal r4=new BigDecimal("1.4").subtract(new BigDecimal("0.5")).divide(new BigDecimal("0.9"));
System.out.println(r4);
BigDecimal r5=new BigDecimal("10").divide(new BigDecimal("3"),2,BigDecimal.ROUND_HALF_UP);
System.out.println(r5);
}
}
Nota: En caso de una división inagotable, utilice devede (, int scal, modo de modo de redondeo).
Parámetro scal: especifique la precisión a unos pocos decimales.
Modo de parámetro: especifique el modo de redondeo: ROUND_HALF_UP (redondeo)