BigDecimal -- 支持任何精度的定点数

如果不是财务计算的话,可能不太会接触到这个玩意...

BigDecimal 高精度定点数. 可以精确小数点...

例如: 平时我们这样计算的时候,

                double num = 2.0;
		double num2 = 1.1;
		System.out.println(num - num2); //0.8999999999999999
它输出的值,是循环小数....是不是看的很不爽啊....


为了不看到这个玩意,咱们用BigDecimal试试看...

</pre><p><pre name="code" class="java">		BigDecimal bigd = new BigDecimal("2.0");
		BigDecimal bigd2 = new BigDecimal("1.1");
		
		BigDecimal bigd3 = bigd.add(bigd2);		//和
		BigDecimal bigd4 = bigd.subtract(bigd2);//差
		BigDecimal bigd5 = bigd.multiply(bigd2);//积
		
		System.out.println("和: "+bigd3);	//和: 3.1
		System.out.println("差: "+bigd4);	//差: 0.9
		System.out.println("积: "+bigd5);	//积: 2.20


BigDecimal的构造器.

BigDecimal(int)       创建一个具有参数所指定整数值的对象。 
BigDecimal(double) 创建一个具有参数所指定双精度值的对象。 
BigDecimal(long)    创建一个具有参数所指定长整数值的对象。 
BigDecimal(String) 创建一个具有参数所指定以字符串表示的数值的对象。


方法描述:

add(BigDecimal)        BigDecimal对象中的值相加,然后返回这个对象。 
subtract(BigDecimal) BigDecimal对象中的值相减,然后返回这个对象。 
multiply(BigDecimal)  BigDecimal对象中的值相乘,然后返回这个对象。 
divide(BigDecimal)     BigDecimal对象中的值相除,然后返回这个对象。 
toString()                将BigDecimal对象的数值转换成字符串。 
doubleValue()          将BigDecimal对象中的值以双精度数返回。 
floatValue()             将BigDecimal对象中的值以单精度数返回。 
longValue()             将BigDecimal对象中的值以长整数返回。 
intValue()               将BigDecimal对象中的值以整数返回。


部分引用: http://www.cnblogs.com/linjiqin/p/3413894.html

你可能感兴趣的:(BigDecimal -- 支持任何精度的定点数)