用BigDecimal计算
import java.math.BigDecimal;
import java.math.MathContext;
public class $ {
public static void main(String[] args) {
// 0.1*0.1+0.2*0.2+(-0.3)*0.3
// 0.1*0.1+0.2*0.2-0.3*0.3
BigDecimal a = new BigDecimal(0.1);
a = a.multiply(a, MathContext.DECIMAL32);
BigDecimal b = new BigDecimal(0.2);
b = b.multiply(b, MathContext.DECIMAL32);
BigDecimal c = new BigDecimal(0.3);
c = c.multiply(c, MathContext.DECIMAL32);
a = a.add(b, MathContext.DECIMAL32);
a = a.subtract(c, MathContext.DECIMAL32);
System.out.println(a.doubleValue());
}
}-0.04