首页 > 解决方案 > 如何在不考虑 java 中的前导零的情况下将字符串解析为 BigDecimal?

问题描述

我有这个数字作为字符串 000000000007500 收到,我必须将它传递给 BigDecimal 不考虑左侧的零,我尝试执行以下操作但结果为 0.0,如果你能帮助我,非常感谢很多。

BigDecimal bigDecimal = BigDecimal.valueOf ((Double.valueOf (transNum.getAmount ()) / 100));

标签: javabigdecimal

解决方案


BigDecimal 将忽略String构造函数中的前导 0,因此new BigDecimal("000000000007500")将表示 7500。

如果你想在那之后除以 100,那么用BigDecimal

BigDecimal result = new BigDecimal(transNum.getAmount())
                         .divide(BigDecimal.valueOf(100), MathContext.UNLIMITED);

推荐阅读