package hi;
import java.util.Scanner;
class hi {
/**
* www.instanceofjava.com
*/
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("Enter a binary number: ");
int binarynum = in.nextInt();
int binary = binarynum;
int decimal = 0;
int power = 0;
while (true) {
if (binary == 0) {
break;
} else {
int tmp = binary % 10;
decimal += tmp * Math.pow(2, power);
binary = binary / 10;
power++;
}
}
System.out.println("while is false");
System.out.println("Binary=" + binary + " Decimal=" + decimal);
}
}
我无法理解 while 循环是如何结束的。 while
中的条件什么时候会变成false
?
最佳答案
退出循环有两种方法:
通过循环头中的条件计算结果为 false。
使用分支语句,特别是使用
break
或return
。
在您的情况下,循环头部的条件始终为true
,因此这永远不会导致循环退出。
但是,您有一个 break
语句,该语句在 binary == 0
计算结果为 true
时立即执行。 break
将退出循环。
您可能想阅读 branch statements .
关于java - 这个 while(true) 循环如何退出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52035805/