分支与循环需组合使用:分支做决策、循环做重复,嵌套或串联表达业务逻辑;常见模式如遍历中判断符号统计、查找后break跳出、跳过特定数等;务必用大括号避免逻辑错位。

流程控制的分支与循环不是孤立使用的工具,而是配合解决实际问题的组合技。关键在于:用分支做决策,用循环做重复,两者嵌套或串联,才能表达真实业务逻辑。
分支嵌套在循环里:边遍历边判断
这是最常见也最实用的组合方式。比如统计一个整数数组中正数、负数和零的个数:
- 外层用for循环逐个访问数组元素
- 内层用if-else if-else判断每个数的符号,并更新对应计数器
- 不需要提前退出,所以不用break;也不需要跳过本次,所以通常不用continue
再比如遍历字符串查找第一个大写字母的位置:循环负责“挨个看”,分支负责“是不是大写”。一旦找到,可以用break跳出循环,避免无谓遍历。
循环中用分支控制执行路径
不是所有循环体里的代码都要每次都执行。比如打印1到100,但跳过所有能被7整除的数:
- for (int i = 1; i
- if (i % 7 == 0) continue; 这一句就让分支干预了循环流程
- 只有不满足条件时,后面的System.out.println(i)才会执行
类似地,用if + break可以实现“找到即停”,用if + return(在方法内)可提前结束整个逻辑。
分支里启动循环:按需重复处理
当程序根据用户选择进入不同功能模块时,分支决定“做什么”,而具体操作往往需要循环支撑。例如简易菜单系统:
- 用switch读取用户输入的选项(1-查成绩,2-录成绩,0-退出)
- 选“2”后,进入一个while循环,持续接收多条成绩录入,直到用户输入-1结束
- 选“0”则直接break出主循环,程序退出
这种结构让主干清晰,各分支内部又具备完整的交互能力。
避免典型陷阱:缩进≠逻辑归属
很多人误以为缩进决定了代码归属,结果写出这样的错误:
- if (score >= 60) System.out.println("及格"); System.out.println("欢迎再来");
- 第二行看似属于if,实际不受控制,每次都会执行
- 正确做法是统一加{ },哪怕只有一行——尤其在循环或分支嵌套时,这是防止逻辑错位的底线习惯
不复杂但容易忽略。
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











