内容概要
1.if语句
2.switch语句
3.for语句
4.while语句
5.do-while语句
控制语句
控制语句 | 功能 |
条件语句(if、switch) | 针对某种条件进行某种处理 |
循环语句(for、while、do-while) | 重复执行某一段代码 |
异常处理语句(try—catch—finally) | 处理程序发生的异常 |
1.if语句
if语句是条件语句的一种形式:如果满足某种条件,就进行某种处理。
(1)if语句格式1:if(条件){命令1; 命令2; 。。。},如果条件为真,程序顺序的执行花括号内的命令(命令1,命令2。。。)
(2)if语句格式2:if(条件){命令1;} else{命令2;},如果条件为真,执行命令1,否则执行命令2。
(3)if语句格式3:if(条件1){命令1;} else if(条件2){命令2;} else if(条件3){命令3;} else {命令n;}
注:if语句只执行条件为真的命令语句。其他语句不会被执行。 if,else if,else 语句块内只有一条语句存在时,我们可以省去花括号。eg:if(1>2){a=2;}等价于if(1>2) a=2;反之,花括号内有多条语句,不能省去花括号。
2.switch语句
语法格式:switch(表达式){
case 值1:命令1;
case 值2:命令2;
case 值3:命令3;
。。。
default:命令n;
}
若(表达式==值1),执行命令1、2、3、n。 若(表达式==值2),执行命令2、3、n。 若(表达式==值3),执行命令3、n。 若表达式的值与值1、2、3都不相符,执行命令n。
break语句:
在switch语句中,用于终止一种情形;在循环语句中,用于强制退出循环。 switch语句中的 case 值:值可以为整数,但绝对不能为实数或字符串,如:case 5.4:或case “abc”:是错误的,然后 值 可以是字符,字符实质上就是整数,所以 case ‘a’或 case‘酷’都是合法的。 switch语句还可以在while、do-while语句中强制退出循环。
continue语句:
终止本次循环,而不是退去循环。continue语句使程序流转到循环语句的“}”处。eg:
for(int a=1;a<=10;a++){ ...................//x1 if(a<=5) continue; .........................//x2 System.out.println(a+“”);...............//x3 }............................................//x4
程序执行结果:6 7 8 9 10。当a<=5时,x2的continue语句便会被执行,程序转到x4行的 } 处(但循环并没有结束,只有碰到条件表达式为假或break语句时,程序才会退出for循环)。随后再执行x1行的迭代表达式a++。
3.for语句
for语句的格式:for(初值表达式;条件表达式;迭代因子){命令1;命令2;命令n;}
for语句的执行过程:初值表达式→条件表达式(真)→{执行}→迭代因子→条件表达式(真)→{执行}→迭代因子→条件表达式(假)→退出for循环。初值表达式仅在for语句开始时执行一次。与if语句一样,for语句中,若只有一条命令,则可以将花括号省去。
注:for语句中,若条件表达式始终为真,则会出现死循环的情况。编程时,一定要考虑周全。在DOS窗口中,按“Ctrl+C”可以强制终止程序执行。
for语句中,初值表达式、条件表达式、迭代因子可以根据不同的情况予以省略。eg:
int a=1; for(;a<=5;){System.out.println(a+""); a++;}
for语句中,初值表达式和迭代因子可以使用逗号来分隔多个条目。但在它的条件表达式中,则不允许这么做。
多重for循环:是for语句的内部嵌套另外的for语句。(1)二重for循环:for(;;){for(;;){。。。}}。(2)三重for循环:forfor(;;){for(;;){for(;;){。。。}}}。
注意多重for循环内的continue语句和break语句。continue语句在哪个循环内一般就和那个for循环相关联。如果是break语句,则退出当前for循环。
eg:
outer:for(int a=1;a<=3;a++){...........//x1 for(int b=1;b<=2;b++){....................//x2 if(a<=2) continue outer; .................//x3 System.out.println(a+""+b);} .............//x4 System.out.println("你好"+a);} ...........//x5
x1行的for语句前有“outer”标记,称之为标签(label),执行x3行的continue后不再跳到x4行的 }处,而是跳到x1行的循环开始处。break语句也可以和标签一起使用。
4.while语句
while语句的格式:while(条件){命令1;命令2;。。。}
while语句执行的顺序:条件(真)→{执行}→条件(真)→{执行}→条件(假)→终止while循环
同for循环一样,while循环也可以嵌套。
5.do-while语句
do-while语句同while语句类似,但它首先执行花括号中的命令,然后再判断条件表达式。格式如下:
do{命令1;命令2;。。。}while(条件); //要有分号。
do-while语句的执行顺序:{执行}→条件(真)→{执行}→条件(真)→ {执行}→条件(假)→终止
do-while语句至少被执行一次,do本身就有执行的意思。
问题思考:
(1)编写九九乘法口诀表
(2)编写下面图形的星阵
★
★ ★ ★
★ ★ ★ ★ ★
★ ★ ★ ★ ★ ★ ★
★ ★ ★ ★ ★
★ ★ ★
★
(3)编写下面图形的星阵
★
★ ★
★ ★
★ ★
★ ★
★ ★
★
转载请注明: ITTXX.CN--分享互联网 » Java语言学习—第四章 程序流程控制语句[Java基础]
最后更新:2018-12-23 20:43:25