如何检查一个数字是否有小数 place/is 整数?
How to check if a number has a decimal place/is a whole number?
我的输入字段 BigDecimal
num 可能包含整数和浮点数。
num = 45
or
num = 45.5343434
如果BigDecimal
输入字段num
包含小数位,那么我想将小数位限制为4位。
Desired Output : 45.5343 if input num = 45.5343434
Desired Output : 45 if input num=45
我该怎么做?
您对 BigDecimal
的 比例 感兴趣。
BigDecimal x = new BigDecimal( "45.5343434" );
BigDecimal y = new BigDecimal( "45" );
x.scale(): 7
y.scale(): 0
您问的是:
I would like to limit the decimal places by 4
测试规模大于四。如果是,round.
BigDecimal num = new BigDecimal(45);
if (num.scale() > 4) {
num = num.setScale(4, RoundingMode.HALF_UP);
}
System.out.println(num);
输出:
45
若有更多小数:
BigDecimal num = new BigDecimal("45.5343434");
45.5343
您可以选择不同的舍入模式以满足您的要求。
我的输入字段 BigDecimal
num 可能包含整数和浮点数。
num = 45
or
num = 45.5343434
如果BigDecimal
输入字段num
包含小数位,那么我想将小数位限制为4位。
Desired Output : 45.5343 if input num = 45.5343434
Desired Output : 45 if input num=45
我该怎么做?
您对 BigDecimal
的 比例 感兴趣。
BigDecimal x = new BigDecimal( "45.5343434" );
BigDecimal y = new BigDecimal( "45" );
x.scale(): 7
y.scale(): 0
您问的是:
I would like to limit the decimal places by 4
测试规模大于四。如果是,round.
BigDecimal num = new BigDecimal(45);
if (num.scale() > 4) {
num = num.setScale(4, RoundingMode.HALF_UP);
}
System.out.println(num);
输出:
45
若有更多小数:
BigDecimal num = new BigDecimal("45.5343434");
45.5343
您可以选择不同的舍入模式以满足您的要求。