在 Java 中计算整数的长度
Siddharth Swami
2023年10月12日
在本教程中,我们计算 Java 中整数的位数。
在 Java 中使用 for
循环计算整数的长度
首先,我们将看到一个简单的迭代解决方案。我们将整数除以 10,在每次迭代中存储计数,直到数字等于 0。
下面的代码演示了上述方法。
public class Digits {
static int count_digit(int x) {
int count = 0;
while (x != 0) {
x = x / 10;
++count;
}
return count;
}
public static void main(String[] args) {
int x = 345;
System.out.print(count_digit(x));
}
}
输出:
3
我们还可以使用递归的分治法来实现上述逻辑。
在 Java 中使用 Math.log10()
函数计算整数的长度
现在让我们看看基于日志的解决方案。我们将使用以 10 为底的对数来计算整数中的位数。此方法仅适用于正整数。我们将导入 java.util
类,从中我们将使用 Math.log10()
函数。
请参阅下面的代码。
import java.util.*;
public class Digits {
static int count_digit(int x) {
return (int) Math.floor(Math.log10(x) + 1);
}
public static void main(String[] args) {
int x = 345;
System.out.print(count_digit(x));
}
}
输出:
3
Java 中使用 toString()
函数计算整数的长度
另一种方法是将整数转换为字符串,然后计算其长度。我们将使用 java.util
包中的 toString()
函数将整数转换为字符串。length()
方法返回字符串的长度。
下面的代码演示了上面的代码。
import java.util.*;
public class Digits {
static void count_digits(int x) {
String dig = Integer.toString(x);
System.out.println(+dig.length());
}
public static void main(String args[]) {
int x = 345;
count_digits(x);
}
}
输出:
3