我有一个要求,我需要找到一个整数的位数.我搜索了它并得到了一些技巧.但我也开发了一个我自己的技巧.我只是想知道是否正确的方法来知道整数中的位数.
for (int i = 1; i < 11; i++) { if (Math.abs(number) < (j = Math.pow(10, i))) { System.out.println("Number of Digits : "+i); break; } }
我把11作为限制,因为最大整数是11位数.如果这是正确的方式,请告诉我.
请注意,我没有选择使用任何字符串api.
您的解决方案效果不佳.这对于简单的任务来说太复杂了.如果数字更大,那就太慢了.
你应该使用:
String.valueOf(number).length()
简单,易读,可扩展性更好.