今天get到了一个炒鸡好用的处理货币的类型!BigDecimal 还有相关格式---> NumberFormat
public static void main(String[] args){
double a = 0.03;
double b = 0.02;
double c= a-b;
}
把c打印输出是0.01吗??试试就知道了!
不管是float,还是double,都不能用做货币处理的类型!
试试下面这个吧~
BigDecimal
public static void main(String[] args){
BigDecimal record = new BigDecimal(String.valueOf(10000000));
BigDecimal new_record = new BigDecimal(String.valueOf(3));
NumberFormat currency = NumberFormat.getCurrencyInstance();//建立货币格式化引用
NumberFormat percent = NumberFormat.getPercentInstance();
percent.setMaximumFractionDigits(3);
sop("货币格式:\t" + currency.format(record));
sop("货币格式:\t" + percent.format(0.2145555));
}
public static void sop(Object s){
System.out.println(s);
}
输出:
货币格式: ¥10,000,000.00
货币格式: 21.456%
真的炒鸡好用嘻嘻。
这里没有把BigDecimal的加减乘数放上来,读者可以自己写个demo试试~尤其是在除 这个方法上面~