今天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试试~尤其是在除 这个方法上面~