在需要精确答案的地方,要避免使用float和double;对于货币计算,要使用int,long或者BigDecimal。
BigDecimal :不可变,任意精度的有符号十进制数。
package com.lkt.jh;
import java.math.BigDecimal;
public class MyBigDecimal {
//相加
public BigDecimal add(BigDecimal a,BigDecimal b){
return a.add(b);
}
//减法
public BigDecimal subtra(BigDecimal a,BigDecimal b){
return a.subtract(b);
}
//乘法
public BigDecimal mul(BigDecimal a,BigDecimal b){
return a.multiply(b);
}
//除法
public BigDecimal div(BigDecimal a,BigDecimal b){
return a.divide(b);
}
//比较两个数
public int compareTo(BigDecimal a,BigDecimal b){
return a.compareTo(b);
}
public static void main(String[] args) {
MyBigDecimal m=new MyBigDecimal();
System.out.println(m.add(new BigDecimal("1.00"), new BigDecimal("2.00")));
}
}