平时要求数字的长度,最常用的方法是将数字转成字符串然后求字符串的长度,但还有一种方法可以直接求得:(int)(Math.log(x) / Math.log(10) + 1)
Math.log(10)的值在2.3多,而Math.log(x)的值在于x是10的几倍,比如x取1000,那么Math.log(x)的值就是2.3 ✖ 3 结果接近7,然后除以 2.3 等于 3,加上1,不就是4吗。
1000的位数就是4,真的快,佩服想出来的大佬,不过现在归我了。哈哈!!!
平时要求数字的长度,最常用的方法是将数字转成字符串然后求字符串的长度,但还有一种方法可以直接求得:(int)(Math.log(x) / Math.log(10) + 1)
Math.log(10)的值在2.3多,而Math.log(x)的值在于x是10的几倍,比如x取1000,那么Math.log(x)的值就是2.3 ✖ 3 结果接近7,然后除以 2.3 等于 3,加上1,不就是4吗。
1000的位数就是4,真的快,佩服想出来的大佬,不过现在归我了。哈哈!!!