计算整数位数的 Java 程序
要理解此示例,您应该具备以下 Java 编程的知识:
示例 1:使用 while 循环计算整数中的位数
public class Main {
public static void main(String[] args) {
int count = 0, num = 0003452;
while (num != 0) {
// num = num/10
num /= 10;
++count;
}
System.out.println("位数: " + count);
}
}
输出
位数: 4
在这个程序中, while
循环被迭代,直到测试表达式 num != 0
被评估为 false
。
- 第一次迭代后,
num
除以 10,其值为 345。然后,count
增加到 1。 - 第二次迭代后,
num
是 34,count
增加到 2。 - 第三次迭代后,
num
是 3,count
增加到 3。 - 第四次迭代后,
num
是 0,count
增加到 4。 - 然后测试表达式被评估为假并且循环终止。
注意:程序会忽略数字之前的任何零。因此,对于像 000333 这样的数字,输出将为 3。
示例 2:使用 for 循环计算整数中的位数
public class Main {
public static void main(String[] args) {
int count = 0, num = 123456;
for (; num != 0; num /= 10, ++count) {
}
System.out.println("位数: " + count);
}
}
输出
位数: 6
在这个程序中,我们没有使用 while 循环,而是使用没有任何主体的 for 循环。
在每次迭代中,值 num
除以 10 和 count
增加 1。
for
循环退出时 num != 0
为假,即 num
等于 0。
由于 for
循环没有主体,因此您可以将其更改为 Java 中的单个语句,如下所示:
for(; num != 0; num/=10, ++count);