如何将两个While循环改写为含while(true)、if和break的等价循环?
改写后的等价代码
按照要求,将原代码的两个while循环改写为while(true)结合if+break的结构,输出结果与原代码完全一致:
int m = 0; while (true) { if (m > 7) { // 原循环终止条件取反,满足时退出循环 break; } System.out.print(m + " "); m++; } System.out.println(); int MM = 42; while (true) { if (MM < 6) { // 原循环终止条件取反,满足时退出循环 break; } System.out.print(MM + " "); MM -= 6; } System.out.println();
改写逻辑说明
- 第一个循环:原循环的执行条件是
m <=7,因此在while(true)内部,当m >7时触发break终止循环,其余输出、变量自增逻辑与原代码完全一致。 - 第二个循环:原循环的执行条件是
MM >=6,因此在while(true)内部,当MM <6时触发break终止循环,输出、变量递减逻辑保持不变。
内容的提问来源于stack exchange,提问作者Mikhail Ryaguzov
相关产品推荐
相关产品推荐

