找到正整数位数的最佳方法是什么?
我找到了这3种基本方法:
转换为字符串
String s = new Integer(t).toString();
int len = s.length();
Run Code Online (Sandbox Code Playgroud)for循环
for(long long int temp = number; temp >= 1;)
{
temp/=10;
decimalPlaces++;
}
Run Code Online (Sandbox Code Playgroud)对数计算
digits = floor( log10( number ) ) + 1;
Run Code Online (Sandbox Code Playgroud)你可以在大多数语言中计算log10(x)= ln(x)/ ln(10).
首先我认为字符串方法是最脏的,但我想的越多,我认为这是最快的方法.或者是吗?
我在R中有一个数字向量:
c(0.9, 0.81)
Run Code Online (Sandbox Code Playgroud)
我想提取此向量中每个元素的位数.该命令将返回,在这种情况下,1并且2由于数字是9和81.有方便的方法吗?此外,如果结果是1,我如何扩展到两位数?例如,我想要一个返回的向量
c(0.90, 0.81)
Run Code Online (Sandbox Code Playgroud)