玖叶教程网

前端编程开发入门

Java中BigDecimal处理小数点

  BigDecimal   a1 = new BigDecimal("3.456");
	a1 = a1.setScale(1, BigDecimal.ROUND_DOWN); //直接删除多余的小数位
	System.out.println(a1);   //3.4

	BigDecimal   a2 = new BigDecimal("3.456");
	a2 = a2.setScale(1, BigDecimal.ROUND_UP);   //进位处里
	System.out.println(a2);   //3.5

	BigDecimal   a3 = new BigDecimal("3.456");
	a3 = a3.setScale(2, BigDecimal.ROUND_HALF_UP);  //向上取整四舍五入
	System.out.println(a3);   //3.46

	BigDecimal   a4 = new BigDecimal("3.35");
	a4 = a4.setScale(1, BigDecimal.ROUND_HALF_DOWN);  //向下取整四舍五入
	System.out.println(a4);   //3.3
	
	//1: scale指的是你小数点后的位数。比如82.568则score就是3
	BigDecimal   a5 = new BigDecimal("82.568");
	System.out.println(a5.scale()); //获取 a5 这个数的小数位数
	//2.roundingMode是小数的保留模式。它们都是BigDecimal中的常量字段,有很多种。
	//比如:BigDecimal.ROUND_HALF_UP表示的就是4舍5入。
	
	/*3.pubilc BigDecimal divide(BigDecimal divisor, int scale, int roundingMode)
	的意思是说:我用一个BigDecimal对象除以divisor后的结果,并且要求这个结果保留有scale个小数位,
	roundingMode表示的就是保留模式是什么,是四舍五入啊还是其它的,你可以自己选 */
	
	//4. 对于一般  add、subtract、multiply 则表示 加法, 减法,和乘法

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言