【发布时间】:2020-11-06 08:18:43
【问题描述】:
我对这个 while 循环感到困惑。如果条件为 true 则重复;如果 false 则结束循环。对吗?
int a = in.nextInt();
int num;
int highestDigit = 0;
while (a > 0) {
int digit = a % 10;
if (digit > highestDigit) {
highestDigit = digit;
}
a /= 10;
}
System.out.println(highestDigit);
但是,条件为真,因此它会一遍又一遍地打印最高数字。但是代码在找到最高位时停止。
输入:214 输出:4
【问题讨论】:
-
a /= 10在循环中的每一圈发生,使a变小直到为零;然后循环结束。 -
是时候学习如何调试了
-
'println' 在 while 循环之外。是什么让您认为它会打印不止一次?
标签: java while-loop