java中BigDecimal进行加减乘除的基本用法
前言
众所周知Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数。在实际应用中,需要对更大或者更小的数进行运算和处理。float和double只能用来做科学计算或者是工程计算,在商业计算中要用java.math.BigDecimal。
BigDecimal所创建的是对象,我们不能使用传统的+、-、*、/等算术运算符直接对其对象进行数学运算,而必须调用其相对应的方法。
方法中的参数也必须是BigDecimal的对象。构造器是类的特殊方法,专门用来创建对象,特别是带有参数的对象。
示例代码如下
importjava.math.BigDecimal;
publicclassT{
publicstaticvoidmain(String[]args){
Stringa="9999.9999";
intb=9999;
doublec=9999.9999;
chard=99;
System.out.println("===================");
//不同类型转为BigDecimal
BigDecimalma=newBigDecimal(a);
BigDecimalmb=newBigDecimal(b);
BigDecimalmc=newBigDecimal(c);
BigDecimalmd=newBigDecimal(d);
System.out.println("ma:"+ma.toString());
System.out.println("mb:"+mb.toString());
System.out.println("mc:"+mc.toString());
System.out.println("md:"+md.toString());
System.out.println("===================");
//加
BigDecimaladd=ma.add(mb);
System.out.println("加法:"+add);
//减
BigDecimalsub=ma.subtract(mb);
System.out.println("减法:"+sub);
//乘
BigDecimalmul=mb.multiply(md);
System.out.println("乘法:"+mul);
//除
BigDecimaldiv=mb.divide(md);
System.out.println("除法:"+div);
System.out.println("===================");
mc=mc.setScale(2,BigDecimal.ROUND_HALF_UP);
System.out.println("四舍五入:"+mc);
System.out.println("===================");
mc=mc.negate();
System.out.println("负数:"+mc);
System.out.println("===================");
}
}
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。