流程控制语句
流程
流程,指的是代码的执行先后顺序。就像我们去医院看病,要先挂号后看病。
分类
- 顺序结构
- 判断结构
- 循环结构
顺序结构
指的是按照代码的实际顺序执行,先写的先执行,后写的后执行。
流程图
判断结构(选择结构)
If型选择语句
- 单if语句
格式
if(关系表达式){
语句体;
}
流程图
举例:
显然我们会执行if语句里面的代码,因为我们满足了if的判断条件。
public class If {
public static void main(String[] args) {
System.out.println("今天天气不错,正在压马路……突然发现一个快乐的地方:网吧");
int age = 19;
if (age >= 18) {
System.out.println("进入网吧,开始high!");
System.out.println("遇到了一群猪队友,开始骂街。");
System.out.println("感觉不爽,结账走人。");
}
System.out.println("回家吃饭");
}
}
- if…else判断语句
格式
if(关系表达式) {
语句体1;
}else {
语句体2;
}
流程图
举例
显然,我们会输出奇数,因为if判断条件不满足,所以程序跳到else里面执行里面的代码。
// 标准的if-else语句
public class IfElse {
public static void main(String[] args) {
int num = 123;
if (num % 2 == 0) { // 如果除以2能够余数为0,说明是偶数
System.out.println("偶数");
} else {
System.out.println("奇数");
}
}
}
3.if…else if…else语句(备胎语句)
格式
if (判断条件1) {
执行语句1;
} else if (判断条件2) {
执行语句2;
}
...
}else if (判断条件n) {
执行语句n;
} else {
执行语句n+1;
}
流程图
举例
一个个条件判断过去,满足就执行里面的代码,都不满足就执行else里面的代码。
// x和y的关系满足如下:
// 如果x >= 3,那么y = 2x + 1;
// 如果-1 < x < 3,那么y = 2x;
// 如果x <= -1,那么y = 2x – 1;
public class Demo04IfElseExt {
public static void main(String[] args) {
int x = -10;
int y;
if (x >= 3) {
y = 2 * x + 1;
} else if (-1 < x && x < 3) {
y = 2 * x;
} else {
y = 2 * x - 1;
}
System.out.println("结果是:" + y);
}
}