java浮点数精确计算,使用java.math.Big
Decimal,测试代码如下:
class="java">package test;
import java.math.BigDecimal;
public class Test {
	public static void main(String[] args) {
		Double d1=0.0333D;
		Double d2=0.0333D;
		Double d3=0.0333D;
		System.out.println(String.valueOf(d1+d2+d3));
		
		BigDecimal b1 = new BigDecimal("0.0333");
		BigDecimal b2 = new BigDecimal("0.0333");
		BigDecimal b3 = new BigDecimal("0.0333");
		System.out.println(b1.add(b2).add(b3).doubleValue());
		System.out.println(b1.doubleValue());
		
		BigDecimal bd = new BigDecimal(0);
		String[] str = {"0.0333","0.0333","0.0333"};
		for(String s : str)
		{
			bd = bd.add(new BigDecimal(s));
		}
		
		System.out.println(bd.doubleValue());
	}
}