示例1:使用while循环对整数中的位数进行计数
public class NumberDigits {
public static void main(String[] args) {
int count = 0, num = 3452;
while(num != 0)
{
// num = num/10
num /= 10;
++count;
}
System.out.println("Number of digits: " + count);
}
}
输出
Number of digits: 4
在这个程序中, while
该循环被重复直到测试表达式num != 0
被评估为0(假)。
- 第一次迭代后, num将除以10,其值将为345。然后, 计数增加到1。
- 在第二次迭代之后, n um的值为34,并且计数增加到2。
- 在第三次迭代后, num的值将为3,并且计数增加到3。
- 在第四次迭代后, num的值将为0,并且计数增加到4。
- 然后将测试表达式评估为false并终止循环。
示例2:使用for循环对整数中的位数进行计数
public class NumberDigits {
public static void main(String[] args) {
int count = 0, num = 123456;
for(; num != 0; num/=10, ++count) {
}
System.out.println("Number of digits: " + count);
}
}
输出
Number of digits: 6
在此程序中,不使用while循环,而是使用不带任何主体的for循环。
每次迭代时, num的值除以10, count则增加1。
当num != 0
为false,即num = 0时, for
循环退出。
由于for
循环没有主体,因此可以将其更改为Java中的单个语句,如下所示:
for(; num != 0; num/=10, ++count);