第一部分:for 循环基本语法
掌握最常用循环结构的三大要素:初始化、条件、更新
学习目标
能独立编写并调试标准 for 循环,理解执行流程
1
经典语法模板
for (初始化; 条件; 更新) { // 循环体 }
2
打印 1~5
for (int i = 1; i <= 5; i++) { System.out.println(i); }
第二部分:for 循环常见变体
省略、多变量、倒序、步长掌握
1
倒序打印
for (int i = 10; i >= 1; i--) { System.out.print(i + " "); } // 输出: 10 9 8 7 6 5 4 3 2 1
2
步长为2的偶数序列
for (int i = 2; i <= 10; i += 2) { System.out.print(i + " "); } // 输出: 2 4 6 8 10
3
多变量同时递增
for (int i = 1, j = 10; i <= 5; i++, j--) { System.out.println(i + " - " + j); }
第三部分:嵌套 for 循环
实现二维图形与矩阵操作
1
打印 5×5 星号方阵
for (int row = 1; row <= 5; row++) { for (int col = 1; col <= 5; col++) { System.out.print("* "); } System.out.println(); }
2
九九乘法表
for (int i = 1; i <= 9; i++) { for (int j = 1; j <= i; j++) { System.out.print(j + "×" + i + "=" + (i * j) + "\t"); } System.out.println(); }
第四部分:增强 for 循环(for-each)
遍历数组与集合的优雅方式
1
数组遍历
int[] nums = {3, 7, 2}; for (int n : nums) { System.out.println(n); }
2
字符串列表遍历
List<String> list = List.of("Java", "Python", "Go"); for (String lang : list) { System.out.println(lang.toUpperCase()); }
第五部分:控制语句 break / continue
精准控制循环流程
1
break 提前退出
for (int i = 1; i <= 10; i++) { if (i == 5) { break; // 找到5就停止 } System.out.print(i + " "); } // 输出: 1 2 3 4
2
continue 跳过本次
for (int i = 1; i <= 10; i++) { if (i % 2 == 0) { continue; // 跳过偶数 } System.out.print(i + " "); } // 输出: 1 3 5 7 9
第六部分:综合案例:猜数字游戏
用 for 循环实现完整交互流程
1
需求说明
- 随机生成 1-100 的整数
- 用户最多猜 7 次
- 提示“偏大/偏小”
2
完整代码
import java.util.Random; import java.util.Scanner; public class GuessNumber { public static void main(String[] args) { Scanner sc = new Scanner(System.in); Random rand = new Random(); int target = rand.nextInt(100) + 1; final int MAX_TRY = 7; for (int i = 1; i <= MAX_TRY; i++) { System.out.print("第" + i + "次猜(1-100):"); int guess = sc.nextInt(); if (guess == target) { System.out.println("恭喜你,猜对了!"); break; } else if (guess < target) { System.out.println("偏小"); } else { System.out.println("偏大"); } } System.out.println("答案是:" + target); } }
第七部分:常见问题与调试技巧
快速定位并修复 for 循环错误
问题1:死循环
// 错误:忘记更新循环变量 for (int i = 0; i < 10; ) { } // 死循环 // 正确:确保更新 for (int i = 0; i < 10; i++) { }
问题2:边界错误
// 错误:<= 与 < 混用导致越界 for (int i = 0; i <= arr.length; i++) { } // ArrayIndexOutOfBoundsException
调试技巧
- IDE 断点调试查看循环变量
- System.out.println() 打印关键变量
- 单元测试覆盖边界值
知识总结
两分钟回顾本节全部要点,建议收藏备查
核心语法速记
- for(;;):三要素循环
- for(:):增强遍历
- break:提前退出
- continue:跳过本次
易错点提醒
- 循环条件确保最终为 false
- 数组遍历注意 0~length-1
- 嵌套循环变量命名清晰
- break/continue 只影响一层
最佳实践
- 优先增强 for 遍历数组/集合
- 复杂逻辑提取为方法
- 循环变量作用域最小化
- 避免过深嵌套