本为为xiangqiao123原创,转载请注明出处http://blog.csdn.net/xiangqiao123,谢谢
java提供了两个用于高精度计算的类:BigInteger 和 BigDecimal。虽然它们大体上“包装器类”的范畴,但二者都没有对应的基本类型。
不过,这两个类包含的方法,提供的操作与对基本类型所能执行的操作相似。也就是说,能作用于int和float的操作,也同样能作用于BigInteger和BigDecimal。只不过必须以方法调用的方式取代运算符方式来实现。由于这么做复杂了许多,所以运算速度会比较慢。在这里,我们以速度换取了精度。
BigInteger支持任意精度的整数。也就是说,在运算中,可以准确地表示任何大小的整数值,而不会丢失任何信息。
BigDecimal支持任何精度的定点数,例如,可以用它进行精确的货币计算。
package qwe;
import java.math.BigDecimal;
import java.math.BigInteger;
public class BigIntegerTest {
public static void main(String[] args) {
BigInteger a=new BigInteger("2344264565376586759768086975896476576456746");
BigInteger b=a.add(new BigInteger("1"));
BigInteger c=a.ZERO;
System.out.println(b);
System.out.println(c);
BigDecimal d=new BigDecimal("222.2134213532454645674665");
BigDecimal e=d.add(new BigDecimal("3"));
System.out.println(e);
}
}