String转BigDecimal
String a = "50.00"; //字符串类型,必须是数字,否则会报错, java.lang.NumberFormatException 异常
BigDecimal b =new BigDecimal(a);
BigDecimal加法运算
BigDecimal planeTax=new BigDecimal(bookInfo.getPlaneTax());
BigDecimal yq=new BigDecimal(bookInfo.getYq());
BigDecimal publishPrice = new BigDecimal(cabinInfo.getPublishPrice());
totalPrice =publishPrice.add(planeTax).add(yq);
BigDecimal减法运算
BigDecimal planeTax=new BigDecimal(bookInfo.getPlaneTax());
BigDecimal yq=new BigDecimal(bookInfo.getYq());
BigDecimal publishPrice = new BigDecimal(cabinInfo.getPublishPrice());
totalPrice =publishPrice.subtract(planeTax).subtract(yq);
BigDecimal乘法运算
BigDecimal planeTax=new BigDecimal(bookInfo.getPlaneTax());
BigDecimal yq=new BigDecimal(bookInfo.getYq());
BigDecimal publishPrice = new BigDecimal(cabinInfo.getPublishPrice());
totalPrice =publishPrice.multiply(planeTax).multiply(yq);
BigDecimal避免踩坑
BigDecimal planeTax=new BigDecimal(bookInfo.getPlaneTax());//string数据转换BigDecimal
BigDecimal yq=new BigDecimal(bookInfo.getYq());//string数据转换BigDecimal
BigDecimal publishPrice = new BigDecimal(cabinInfo.getPublishPrice());//string数据转换BigDecimal
//进行相加再相乘操作时注意不要直接用符号+、-、*等,后面是四舍五入的格式
totalPrice =(publishPrice.add(planeTax).add(yq)).multiply( new BigDecimal(model.getBookInfoList().size()))
.setScale(2, BigDecimal.ROUND_HALF_UP);
totalPrice = price.subtract(couponMoney);
String转BigDecimalString a = "50.00"; //字符串类型,必须是数字,否则会报错, java.lang.NumberFormatException 异常BigDecimal b =new BigDecimal(a);BigDecimal加法运算BigDecimal planeTax=new BigDecimal(bookInfo.getPlane...
public static void main(
String
[] args) {
String
str1="2.30";
BigDecimal
bd=new
BigDecimal
(str1);
System.out.println(bd);
BigDecimal
通常称为大小数类,主要运用在一些对数字精度要求很高的项目上,例如银行项目。Java在java.math包中提供的API类
BigDecimal
,用来对超过16位有效位的数进行精确的运算。下面简单说一下它与
String
类型的
转
换。
1.
BigDecimal
转
换为
String
BigDecimal
num = new
BigDecimal
("xxx");
String
str ...
一、构造
BigDecimal
BigDecimal
提供了丰富的构造函数,可以通过int、long、double、
String
等来构造一个
BigDecimal
对象。
但是,使用double作为参数的构造函数,无法精确构造一个
BigDecimal
对象,需要自己指定一个上下文的环境,也就是指定精确位。
BigDecimal
bg = new
BigDecimal
(1.1);
System.out.println(bg.to
String
());
运行结果:
1.100000000000000088817841.
String
a = "50.00"; //字符串类型,必须是数字,否则会报错, java.lang.NumberFormatException 异常
BigDecimal
b =new
BigDecimal
(a);
String
Out
String
=b.to
String
();
BigDecimal
类型的介绍
借用《Effactive Java》这本书中的话,float和double类型的主要设计目标是为了科学计算和工程计算。他们执行二进制浮.