Java String类型和BigDecimal类型之间的转化及BigDecimal类型的介绍

String和BigDecimal的相互转化

String a = "50.00";  //字符串类型,必须是数字,否则会报错, java.lang.NumberFormatException 异常
BigDecimal b =new BigDecimal(a);


String OutString=b.toString();

BigDecimal类型的介绍

 借用《Effactive Java》这本书中的话,float和double类型的主要设计目标是为了科学计算和工程计算。他们执行二进制浮点运算,这是为了在广域数值范围上提供较为精确的快速近似计算而精心设计的。然而,它们没有提供完全精确的结果,所以不应该被用于要求精确结果的场合。但是,商业计算往往要求结果精确,这时候BigDecimal就派上大用场啦。

 BigDecimal加减乘除

BigDecimal bignum1 = new BigDecimal("10");  
BigDecimal bignum2 = new BigDecimal("5");  
BigDecimal bignum3 = null;  
  
//加法  
bignum3 =  bignum1.add(bignum2);       
System.out.println("和 是:" + bignum3);  
  
//减法  
bignum3 = bignum1.subtract(bignum2);  
System.out.println("差  是:" + bignum3);  
  
//乘法  
bignum3 = bignum1.multiply(bignum2);  
System.out.println("积  是:" + bignum3);  
  
//除法  
bignum3 = bignum1.divide(bignum2);  
System.out.println("商  是:" + bignum3);  


版权声明:本文为m0_57613893原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。