JAVA的小数处理(避免默认的科学计数法造成的误差)

public class Test {

	public static void main(String[] args) 	{

		java.math.BigDecimal big1 = new java.math.BigDecimal("600");
	
		BigDecimal big2 = new BigDecimal("300");

		//两个BigDecimal相加

		big1 = big1.add(big2);

		System.out.println(big1);

		//两个BigDecimal相减

		big1 = big1.subtract(big2);

		System.out.println(big1);

		//两个BigDecimal相乘

		big1 = big1.multiply(big2);

		System.out.println(big1);

		//两个BigDecimal相除

		big1 = big1.divide(big2);

		//两个小数BigDecimal相除

		big1=big1.divide(big2,2,  java.math.BigDecimal.ROUND_DOWN);

		System.out.println(big1);

		//如果是Long 型

		BigDecimal big3 = BigDecimal.valueOf(200L); big1 = big1.subtract(big3); System.out.println("big1=" + big1);

	}

}

 
备注:规避默认数据以科学计数法存储,运算时会因为小数点的原因,造成计算错误

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值