1.流程控制语句的含义:
通过一些语句,控制程序的执行流程;
2.流程控制语句的分类:
1. 顺序结构;2. 分支结构;3. 循环结构;
顺序结构:是java默认的执行流程,按照代码的先后顺序,从下到上依次执行;
代码演示:
public class IT梦 {
public static void main(String[] args) {
System.out.println("IT梦");
System.out.println("IT熊团队成员");
System.out.println("男");
System.out.println("18岁");
}
}
分支结构:
1.if语句:在程序中用来判断
格式一:
if(关系表达式){
语句体;
}
执行流程:
1. 首先计算关系表达式的值2. 如果关系表达式的值为true就执行语句体3. 如果关系表达式的值为false就不执行语句体4. 继续执行后面的其他语句
代码演示:
public class IT梦 {
public static void main(String[] args) {
int a=10;
if(a>1){
System.out.println("a大于1");
}
}
}
格式二:
if(关系表达式){
语句体1;
}else{
语句体2;
}
执行流程:
1. 首先计算关系表达式的值2. 如果关系表达式的值为true就执行语句体13. 如果关系表达式的值为false就不执行语句体24. 继续执行后面的其他语句5. 只要执行了其中的一个语句体,那么整个if就会结束
代码演示:
public class IT梦 {
public static void main(String[] args) {
int a=0;
if(a>1){
System.out.println("a大于1");
}else{
System.out.println("a小于1");
}
}
}
格式三:
if(关系表达式1){
语句体1;
}eles if(关系表达式2){
语句体2;
}
......
else{
语句体n;
}
执行流程:
1. 首先计算关系表达式1的值2. 如果关系表达式1的值为true就执行语句体1,如果为false就计算关系表达式2的值3. 如果关系表达式2的值为true就执行语句体2,如果为false就计算关系表达式3的值4. 以此类推……..5. 如果所有关系表达式的值都为false,就执行语句体n
代码演示:
public class IT梦 {
public static void main(String[] args) {
int a=66;
if(a>100){
System.out.println("a大于100");
}else if(a>90){
System.out.println("a小于90");
} else if (a>80) {
System.out.println("a大于80");
} else if (a>70) {
System.out.println("a大于70");
} else{
System.out.println("a大于0");
}
}
}
swich语句格式:
swich(表达式){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
.....
default:
语句体n;
break;
}
执行流程:
1. 首先计算表达式的值2. 依次和case后面的每一个值进行比较,如果有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结束;3. 如果所有case后面的值和表达式的值都不匹配,就会执行default里面的语句体,然后结束整个swich语句;
代码演示:
public class IT梦 {
public static void main(String[] args) {
int a=3;
int b=2;
switch (a-b){
case 0:
System.out.println("答案为0");
break;
case 1:
System.out.println("答案为1");
break;
case 3:
System.out.println("答案为3");
break;
default:
System.out.println("不知道");
break;
}
}
}
注意事项:
1. default不一定要写在最下面,我们可以写在任意位置,只不过我们习惯写在最下面而已2. default可以省略,语法不会出错,但是不建议省略3. break一定要记得写,不然会导致case穿透(如果多个case的语句体重复了,我们可以考虑使用case穿透来简化代码)
循环结构(重复的做某件事情,且具有明确的开始和停止标记):
1.for循环:
格式:
for(初始化语句;条件判断语句;条件控制语句){
循环体语句;
}
执行流程:
1. 执行初始化语句2. 执行条件判断语句,如果结果是false,循环结束;如果结果是true;执行循环体语句3. 执行条件控制语句4. 回头继续执行条件判断语句
代码演示:
public class IT梦 {
public static void main(String[] args) {
//打印3次IT梦爱编程;
for (int i=1;i<=3;i++){
System.out.println("IT梦爱编程");
}
}
}
2.while循环:
格式:
初始化语句;
while(条件判断语句){
循环体语句;
条件控制语句;
}
执行流程(与for循环一致):
1. 执行初始化语句2. 执行条件判断语句,如果结果是false,循环结束,执行循环下面的其他语句;如果结果是true;执行循环体语句2. 执行条件控制语句3. 回头继续执行条件判断语句
for和while的对比:
相同点:
运行规则都是一样的
不同点:
1.for循环中,控制循环的变量,因为归属for循环的语法结构中,在for循环结束后,就不能再次被访问到了2.whlie循环中,控制循环的变量,对于while循环来说不归属其语法结构中,在while循环结束后,该变量还可以继续使用
for循环中:知道循环次数或者循环范围while循环中:不知道循环的次数和范围,只知道循环的结束条件
3.do….while循环(很少用到,了解一下即可)
格式:
初始化语句;
do{
循环体语句;
条件控制语句;
}while(条件判断语句);
执行流程:
1. 执行初始化语句2. 执行循环体语句3. 执行条件控制语句4. 执行条件判断语句,如果结果为true,就会回到前面执行循环体语句;如果结果为false,就会执行循环外的其他语句
特点:
先执行后判断
小练习:
1.用顺序结构分别对自己的姓名,性别,年龄进行输出打印;
答案:
2.a=6,用if的格式一判断a是否大于0,要是大于0就打印输出“a>0”,若不大于0就不执行语句体
答案:
3.a=10 , b=15 , 用if的格式二判断a和b是否相等 , 要是相等就打印输出”a=b” , 要是不相等就打印输出”a!=b”
答案:
3.a=3 , b=1 , c=2 , d=3 , 用if的格式三判断a与b , c , d哪个相等,若与b相等就输出打印a=b , 若与c相等就输出打印a=c , 若与d相等就输出打印a=d
答案:
4.用for循环和while依次打印1~5
答案:
温馨提示:
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。