Java | 一文读懂Java控制语句:像过日子一样写代码
Java控制语句详解:像过日子一样写代码

如果你刚开始学Java,可能会觉得“控制语句”这四个字有点抽象。但其实,控制语句就像我们每天过日子的“规则”——什么时候按部就班(顺序),什么时候做选择(分支),什么时候重复做一件事(循环)。今天就用生活中的例子,带你把Java的控制语句讲透。
一、顺序结构:按部就班的日常
什么是顺序结构?
就像早上起床的流程:先睁眼→再穿衣服→然后洗漱→最后吃早饭,一步接一步,不会乱。Java代码默认就是顺序执行的,从上到下,依次执行每一行。
生活案例:做一杯手冲咖啡的步骤
- 烧开水
- 磨咖啡豆
- 放滤纸、加咖啡粉
- 倒水冲泡
代码示例:用代码模拟冲咖啡的流程
public class CoffeeMaker {
public static void main(String[] args) {
System.out.println("1. 烧开水(等待3分钟)");
System.out.println("2. 把咖啡豆磨成粉(100g豆子)");
System.out.println("3. 滤纸放进滤杯,倒入咖啡粉");
System.out.println("4. 水温降到95℃后,分3次倒水冲泡");
System.out.println("完成!一杯手冲咖啡做好了~");
}
}
运行结果:
代码会严格按照1→2→3→4的顺序打印,就像我们实际操作的步骤一样。
二、分支结构:面临选择时的决策
生活中处处是选择:出门要不要带伞?考试分数够不够评优?Java的分支结构就是帮程序做这类“选择题”的。
1. if语句:简单的“是/否”判断
语法:
if (条件) {
// 条件成立时执行的代码
} else {
// 条件不成立时执行的代码(可选)
}
生活案例:出门前看天气决定是否带伞
- 如果下雨(条件成立),带伞
- 否则(条件不成立),不带伞
代码示例:判断是否需要带伞
public class UmbrellaDecision {
public static void main(String[] args) {
boolean isRaining = true; // 假设正在下雨
if (isRaining) {
System.out.println("外面在下雨,记得带伞!");
} else {
System.out.println("天气晴朗,不用带伞~");
}
}
}
运行结果:
当isRaining为true时,打印“外面在下雨,记得带伞!”;改为false时,打印“天气晴朗,不用带伞~”。
2. if-else if-else:多条件选择
当需要判断多个条件时(比如成绩评级),就需要用if-else if-else,就像“如果…否则如果…否则…”。
生活案例:根据考试分数评级
- 90分及以上:优秀
- 80-89分:良好
- 60-79分:及格
- 60分以下:不及格
代码示例:成绩评级
public class GradeEvaluator {
public static void main(String[] args) {
int score = 85; // 考试分数
if (score >= 90) {
System.out.println("评级:优秀");
} else if (score >= 80) { // 能走到这里,说明分数<90
System.out.println("评级:良好");
} else if (score >= 60) { // 能走到这里,说明分数<80
System.out.println("评级:及格");
} else { // 剩下的都是<60的情况
System.out.println("评级:不及格");
}
}
}
运行结果:
因为score=85,满足80<=85<90,所以打印“评级:良好”。
3. switch语句:固定值的匹配
当判断条件是“某个变量等于A/B/C等固定值”时,用switch比if-else更清晰,就像“如果是A就做X,如果是B就做Y…”。
语法:
switch (变量) {
case 值1:
// 变量等于值1时执行
break; // 执行完后跳出switch,避免继续执行其他case
case 值2:
// 变量等于值2时执行
break;
default:
// 所有值都不匹配时执行(可选)
}
生活案例:根据星期几安排活动
- 周一:上班
- 周二:开会
- 周三:健身
- 其他天:灵活安排
代码示例:星期几的活动安排
public class WeekPlan {
public static void main(String[] args) {
int day = 3; // 1=周一,2=周二,...,7=周日
switch (day) {
case 1:
System.out.println("周一:上班,处理邮件");
break;
case 2:
System.out.println("周二:部门周会,写周报");
break;
case 3:
System.out.println("周三:晚上去健身,练核心");
break;
default:
System.out.println("其他天:灵活安排,记得陪家人~");
}
}
}
运行结果:day=3,所以打印“周三:晚上去健身,练核心”。
(注意:break不能少,否则会继续执行下一个case的代码哦!)
三、循环结构:重复做一件事
生活中很多重复的事:每天跑步3圈、减肥期间每天称重直到达标… Java的循环结构就是帮程序“重复做事”的。
1. for循环:已知次数的重复
当知道要重复多少次时,用for循环最方便,就像“明确要跑3圈,每圈跑完休息1分钟”。
语法:
for (初始化; 循环条件; 每次循环后更新) {
// 重复执行的代码
}
生活案例:每天跑步3圈,记录每圈的用时
- 初始化:从第1圈开始
- 循环条件:圈数≤3
- 每次循环后:圈数+1
代码示例:记录跑步3圈的用时
public class Running {
public static void main(String[] args) {
// 跑3圈,每圈用时(秒)存在数组里
int[] times = {65, 70, 68};
for (int i = 0; i < 3; i++) { // i从0开始,<3时循环,每次+1
int lap = i + 1; // 圈数(1-3)
System.out.println("第" + lap + "圈用时:" + times[i] + "秒");
}
System.out.println("3圈跑完,休息一下!");
}
}
运行结果:
第1圈用时:65秒
第2圈用时:70秒
第3圈用时:68秒
3圈跑完,休息一下!
2. while循环:条件满足就重复
当不知道要重复多少次,但知道“什么时候停止”时,用while循环,就像“减肥时每天称重,直到体重≤60kg就停止”。
语法:
while (循环条件) {
// 条件满足时执行的代码
}
生活案例:减肥计划
- 初始体重65kg
- 每天减0.5kg
- 直到体重≤60kg停止
代码示例:模拟减肥过程
public class WeightLoss {
public static void main(String[] args) {
double weight = 65.0; // 初始体重(kg)
int day = 1; // 第几天
while (weight > 60) { // 体重>60kg就继续减
weight -= 0.5; // 每天减0.5kg
System.out.println("第" + day + "天,体重:" + weight + "kg");
day++;
}
System.out.println("恭喜!体重达标(≤60kg)啦!");
}
}
运行结果:
第1天,体重:64.5kg
第2天,体重:64.0kg
...
第10天,体重:60.0kg
恭喜!体重达标(≤60kg)啦!
3. do-while循环:至少做一次的重复
do-while和while的区别是:它会先执行一次循环体,再判断条件。就像“每天必须喝一杯水,喝完再看今天是否完成喝水任务”(至少喝一次)。
语法:
do {
// 至少执行一次的代码
} while (循环条件); // 注意这里有分号
生活案例:每天喝水任务
- 必须先喝一杯水
- 喝完后检查:如果今天喝的杯数<8,继续喝
代码示例:记录每天喝水杯数
public class WaterDrinking {
public static void main(String[] args) {
int cups = 0; // 今天喝了几杯水
do {
cups++; // 喝一杯
System.out.println("喝了第" + cups + "杯水");
} while (cups < 8); // 没喝够8杯就继续
System.out.println("今天喝够8杯水啦,健康!");
}
}
运行结果:
会依次打印“喝了第1杯水”到“喝了第8杯水”,最后提示喝够了。即使初始cups已经≥8,也会先执行一次“喝一杯”。
总结:控制语句让程序“活”起来
顺序结构是基础,让代码按步骤执行;
分支结构(if/switch)让程序能做选择,应对不同场景;
循环结构(for/while/do-while)让程序能重复做事,避免冗余代码。
就像过日子,有固定流程(顺序),有选择(分支),有重复的坚持(循环)。掌握这些,你写的Java代码会更灵活、更贴近实际需求~
试试把上面的代码跑一遍,再改改条件(比如把跑步圈数改成5圈,减肥目标改成55kg),看看结果有什么变化吧!
更多推荐


所有评论(0)