java判断⼩数位数_java-使⽤BigDecimal确定⼩数位数我对具有以下getNumberOfDecimalPlace函数感兴趣:
System.out.println("0 = " + NumberOfDecimalPlace(0)); // 0
System.out.println("1.0 = " + NumberOfDecimalPlace(1.0)); // 0
System.out.println("1.01 = " + NumberOfDecimalPlace(1.01)); // 2
System.out.println("1.012 = " + NumberOfDecimalPlace(1.012)); // 3
System.out.println("0.01 = " + NumberOfDecimalPlace(0.01)); // 2
System.out.println("0.012 = " + NumberOfDecimalPlace(0.012)); // 3
我可以知道如何通过使⽤BigDecimal实现getNumberOfDecimalPlace吗?
以下代码⽆法正常⼯作:
public static int getNumberOfDecimalPlace(double value) {
final BigDecimal bigDecimal = new BigDecimal("" + value);
final String s = PlainString();
System.out.println(s);
final int index = s.indexOf('.');
if (index < 0) {
return 0;
}
return s.length() - 1 - index;
}
打印以下内容:
0.0
0 = 1
1.0
1.0 = 1
1.01
1.01 = 2
1.012
1.012 = 3
0.01
0.01 = 2
0.012
0.012 = 3
但是,对于案例0、1.0,效果不佳.我希望结果是“ 0”.但是结果却是“ 0.0”和“ 1.0”.结果将返回“ 1”.get out of

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。