如何获得BigDecimal的第一个非零数字

时间:2015-09-29 15:23:15

标签: java bigdecimal

在java中如何获取BigDecimal的第一个非零数字?

例如:

0.001 => 1
0.02 => 2
987.654 => 9

对于介于0和1之间的数字,这将起作用:

bigDecimal.scaleByPowerOfTen(bigDecimal.precision()).setScale(0, RoundingMode.DOWN)

对于大于1的数字,这将起作用:

bigDecimal.scaleByPowerOfTen(1-bigDecimal.precision()).setScale(0, RoundingMode.DOWN)

但有没有解决方案,适用于任何数字?

2 个答案:

答案 0 :(得分:4)

以下是仅使用def printGrid(): print('┌─┬─┬─┐' '\n' '│' + intToText(boxes[0][0]) + '│' + intToText(boxes[1][0]) + '│' + intToText(boxes[2][0]) + '│' '\n' '├─┼─┼─┤' '\n' '│' + intToText(boxes[0][1]) + '│' + intToText(boxes[1][1]) + '│' + intToText(boxes[2][1]) + '│' '\n' '├─┼─┼─┤' '\n' '│' + intToText(boxes[0][2]) + '│' + intToText(boxes[1][2]) + '│' + intToText(boxes[2][2]) + '│' '\n' '└─┴─┴─┘') BigDecimal的解决方案:

int

答案 1 :(得分:2)

可以将function(req, res){ var calls = []; calls.push(Collection1.save()); calls.push(Collection2.save()); calls.push(Collection3.save()); q.all(calls).then(function(call1res, call2res, call3res){ res.json({whaterver:''}); }); } 转换为BigDecimal并使用循环检查数字。请看下面的例子。

char[]