选择结构
概念:根据已知条件进行逻辑判断,满足条件后执行相应操作。
基本if选择结构
- 语法:
if (布尔表达式) {
// 代码块
}
- 执行流程:
1.对布尔表达式进行判断
2.结果为true,则先执行代码块,再执行后续代码。
3.结果为false,则跳过代码块,直接执行后续代码。
if else 选择结构
语法:
if(布尔表达式){
//代码块1
}else{
//代码块2
}
执行流程:
- 对布尔表达式进行判断。
- 结果为true,则先执行代码块1,再退出整个结构,执行后续代码。
- 结果为false,则先执行代码块2,再退出整个结构,执行后续代码。
多重if选择结构
-
语法:
if( 布尔表达式1){
//代码块1
}else if (布尔表达式2){
//代码块2
}else if (布尔表达式3){
//代码块3
}else{
//代码块4 可省略,根据需求而加!
}
注意:相互排斥,有一个为true,其它均不再执行,适用于区间判断。
嵌套if选择结构
-
语法:
if (外层表达式){
if(内层表达式){
//内层代码块1
}else{
//内层代码块2
}
}else{
//外层代码块
} **执行流程:**当外层条件满足时,再判断内层条件。
-注意:
一个选择结构中,可嵌套另一个选择结构。
嵌套格式正确的情况下,支持任意组合。
分支结构
-
语法:
Switch(变量|表达式){ ·可判断的类型:
case 值1: byte、short、int、char、String (JDK7+)
逻辑代码1; 执行流程:
case值2: 匹配相应的值,则执行相应的逻辑代码。
逻辑代码2; 如果变量中的值没有匹配的case值时,执行default逻辑代码。
case值n:
逻辑代码n; **注意:**当匹配的case执行后,不会自动退出整个结构,而是向下继续执行
default: break关键字可在匹配的case执行后,跳出整个结构。
未满足时的逻辑代码;
}
局部变量
概念:声明在方法内部的变量,必须先赋值再使用。
作用范围:定义行开始到所在代码块结束。
局部变量超出作用范围之后,会立刻回收
注意:多个变量,在重合的作用范围内,不可出现重名(命名冲突)。
while循环
语法:
while(布尔表达式){
//逻辑代码(循环操作)
}
-
执行流程:
先对布尔表达式进行判断,结果为true,则执行逻辑代码。
本次执行完毕后,再次进行判断,结果仍旧为true,则再次执行逻辑代码。
直至布尔表达式结果为false时,则会退出循环结构,执行后续代码。
循环的组成
- 需求:打印100遍“HelloWorld”。
public class TestWhile{
public static void main(String[] args){
int i = 1;//1.初始部分:用以判断的变量
while(i<=100){
//2.循环条件:决定是否继续循环的依据
System.out.println("HelloWorld");//3.循环操作:单次执行的逻辑代码或任务
i++;//4.迭代部分:控制循环条件改变增量
}
}
}
- 注意:循环有四部分组成。
- 特点:首次即有入口条件,先判断、再执行,使用于循环次数明确的情况。
do while循环
语法:
do{
逻辑代码(循环操作);
}while(布尔表达式);
-
执行流程:
先执行一次循环操作之后,再进行布尔表达式的判断。
如果结果为true,则再次执行循环操作。
如果结果为false,才会退出循环结构,执行后续代码。
public class TestDoWhile{
public static void mian(String[] args){
int i=1;
do{
System.out.println("helloWorld");
}while(i<=100);
System.out.println("程序结束")
}
}
}
do while的应用场景
需求:检查学生作业完成情况,输入教师评语,决定学生是否需要抄写代码。
import java.util.Scanner;
public class TestWork{
public static void