循环死循环、条件不生效!Java if/for/while 新手逻辑 bug 汇总
·
前言
初学流程控制,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
- 循环边界写错:少一次 / 多一次循环
- 循环变量在外部误用
- 嵌套循环变量名重复(i 嵌套 i)
四、新手逻辑通用排错技巧
- 打印关键变量值,判断条件真假
- 检查是否少写变量自增
- 区分赋值符号与判断符号
- 所有代码块一律加花括号
五、规范写法(新手强制养成)
- if/for/while 无论单行多行,全部加大括号
- 循环内必须更新循环变量
- 判断条件优先写常量在前
10 == a避免写错 =
结语
新手逻辑 BUG 几乎都不是思维问题,都是书写不规范、细节遗漏导致,养成规范写法,可以规避 99% 的流程控制错误。
更多推荐
所有评论(0)