获取数字的最快数字是多少? [英] Fastest way to get number of digits on a number?
本文介绍了获取数字的最快数字是多少?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我已经检测到数字上的位数。例如, 329586
有 6
位数。
I have do detect the amount of digits on a number. For example, 329586
has 6
digits.
什么我完成了,只是将数字解析为字符串,并获取字符串长度,如:
What I done, is simply parsing the number to string, and getting the string length, like:
number.toString().length()
但是,是否有最快的方法来计算数字上的数字?我必须多次使用此方法,因此我认为使用 toString()
会影响性能。
But, is there a fastest way to count digits on a number? I have to use this method several times, so I think using toString()
can impact performance.
谢谢。
推荐答案
Math.floor(Math.log10(number) + 1)
// or just (int) Math.log10(number) + 1
例如:
int number = 123456;
int length = (int) Math.log10(number) + 1;
System.out.println(length);
输出:
6
这篇关于获取数字的最快数字是多少?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文