BigDecimal类中toString和toPlainString区别

【饿了么、美团】外卖红包领取地址 >> 能省一点是一点

BigDecimal num = new BigDecimal("0.1234").pow(10);
System.out.println(num);//1
System.out.println(num.toString());//2
System.out.println(num.toPlainString());//3

System.out.println("重新转换为BigDecimal");
BigDecimal num2 = new BigDecimal(num.toString());
BigDecimal num3 = new BigDecimal(num.toPlainString());
System.out.println(num2.toPlainString());
System.out.println(num3.toPlainString());

执行测试代码,直接看结果:

8.187505353567209228244052427776E-10
8.187505353567209228244052427776E-10
0.0000000008187505353567209228244052427776
重新转换为BigDecimal
0.0000000008187505353567209228244052427776
0.0000000008187505353567209228244052427776

1、1和2不用说,直接print对象默认调用的就是对象的toString方法。
2、从结果可以看出,toString会输出科学计数法的表达形式;toPlainString会直接输出小数,不会变成科学计数法。
3、两种表现形式都可以使用BigDecimal构造方法重新转换成BigDecimal对象。


觉得内容还不错?打赏个钢镚鼓励鼓励!!👍

宠侣 宠物零食75g小鱼干猫零食 天然健康无盐鱼干 成猫幼猫零食全阶段猫咪零食小宠零食
¥18.80
友日久办公自用胶带 宽4.3cm长100m*5卷透明黄胶带 快递封箱胶带 包装封口胶布
¥15.66
真博士衣柜除味香包熏香袋香片空气清新剂固体家用卧室内女生神器持久香包祛除异味固体香膏男士卫生间 清甜桂花【拍三付二】
¥40.00
orphyer vivo x80手机壳保护套x80pro全包镜头新款磨砂玻璃防摔超薄高级感女男潮款 vivo x80 pro【银白色】+手机膜
¥35.90
食花季菌汤包云南特产七彩菌菇包竹荪虫草花山珍菌羊肚菌煲汤食材 七彩菌汤包100g*2袋
¥26.80
【7仓直发】爱迪森果根素 狗狗感冒流鼻涕干呕咳嗽猫咪感冒药打喷嚏宠物清热止咳化痰犬窝咳 15ml*2瓶
¥28.00
易真(YIZHEN) 子弹头口红997哑光持久显色显白柔雾尤雾弹小辣椒口红小样生日礼物送女友老婆礼物 【707#复古正红】
¥44.00
京东京造 一次性纯棉内裤女孕妇产妇坐月子内裤出差旅行消毒免洗独立装XL码10条装
¥35.90