前言

初学流程控制,90% 新手都会遇到:代码不执行、无限死循环、条件判断反了。本篇汇总 if、for、while 三大流程最常见逻辑错误。

一、if 条件最容易踩坑

1. = 和 == 混淆

  • = 赋值
  • == 判断相等

新手错误:

java

运行

if(a = 10){} // 直接赋值,恒成立

2. 多条件判断误用 & / |

正确逻辑:&& 短路与、|| 短路或

3. if 无大括号只控制第一行

java

运行

if(flag)
    System.out.println("成立");
    System.out.println("永远执行");

不加大括号,只有第一句属于 if 逻辑

二、while 死循环经典坑

1. 循环变量不更新

java

运行

int i = 1;
while(i<10){
    System.out.println(i);
    // 无i++ 死循环
}

2. 条件写反、恒成立

三、for 循环新手高频 bug

  1. 循环边界写错:少一次 / 多一次循环
  2. 循环变量在外部误用
  3. 嵌套循环变量名重复(i 嵌套 i)

四、新手逻辑通用排错技巧

  1. 打印关键变量值,判断条件真假
  2. 检查是否少写变量自增
  3. 区分赋值符号与判断符号
  4. 所有代码块一律加花括号

五、规范写法(新手强制养成)

  1. if/for/while 无论单行多行,全部加大括号
  2. 循环内必须更新循环变量
  3. 判断条件优先写常量在前 10 == a 避免写错 =

结语

新手逻辑 BUG 几乎都不是思维问题,都是书写不规范、细节遗漏导致,养成规范写法,可以规避 99% 的流程控制错误。

更多推荐