黑马程序员--Java基础--程序流程控制

来源:互联网 发布:java从入门到放弃 pdf 编辑:程序博客网 时间:2024/05/01 10:00

-----------android培训、java培训、java学习型技术博客、期待与您交流!------------  



1、分支语句

(1)if-else语句

if -else语句是Java中的一条语句,有一个if、else和两个复合语句按一定格式构成,if-else语句的格式如下:

if(表达式){

若干语句

}

else{

若干语句

}

执行规则:if后面的()内的表达式的值必须是Boolean类型,若果表达式的值为true,则执行紧跟的复合语句;如果表达式的值为false,值执行else后面的复合语句。

值得注意的是:如果if和else后面只有一条语句,{ }可以省略不写,但是为了增强程序的可阅读性,最好不要省略。


(2)多条件if-else语句

语句格式如下:

if(表达式1){

若干语句

}

else if(表达式2){

若干语句

}

.......

else if(表达式n){

若干语句

}

else {

若干语句

}

2、switch开关语句

语句格式如下:

switch(表达式){

case 常量1:若干语句

break;

case 常量2:若干语句

break;

......

case 常量n:若干语句

break;

default:若干语句

}

switch语句中的表达式的值必须是整形或字符型,常量值1~n也必须是整形或字符型。switch语句计算表达式的值,若果表达式的值与某个case后面的常量相同,就执行case后面的语句,直到break语句为止;若是没有任何的常量值与表达式的值相同,则执行default后面的若干语句。其中default是可有可无的,如果default不存在,并且所有的常量值都与表达式的值不相同,那么switch语句将不进行任何处理。需要注意的是,同一个switch语句中,case后的常量必须互不相同。

例如:使用switch语句,用户在键盘输入一个代表月份的整数,程序输出该月是第几个季度。

public class Demo {public static void main(String[] args) {Scanner reader = new Scanner(System.in);System.out.println("输入一个月份:");int n = reader.nextInt();switch(n){case 1:case 2:case 3:System.out.println(n+"月属于第一个季度");break;case 4:case 5:case 6:System.out.println(n+"月属于第二个季度");break;case 7:case 8:case 9:System.out.println(n+"月属于第三个季度");break;case 10:case 11:case 12:System.out.println(n+"月属于第四个季度");break;}}}
运行结果为:

输入一个月份:
5
5月属于第二个季度

2、循环语句

(1)while循环

while语句的一般格式:

while(表达式){

若干语句

}

while语句的则行规则:

<1>计算表达式的值,如果为true,就执行<2>,否则执行<3>;

<2>执行循环体,再执行<1>;

<3>结束while语句的执行。


(2)do-while循环

do-while语句的一般格式:

do{

若干语句

}while(表达式);

do-while循环和while循环的区别:do-while的循环体至少被执行一次。


(3)for循环

for语句的一般格式:

for(表达式1; 表达式2; 表达式3){

若干语句


注意:表达式2必须是一个求值为boolean类型数据的表达式。


for循环的执行规则:

<1>计算”表达式1“,完成必要的初始化工作;

<2>判断”表达式2“的值,若”表达式2“的值为true,则执行<3>;否则执行<4>;

<3>执行循环体,然后计算”表达式3“,以便改变循环条件,再执行<2>;

<4>结束for语句的执行。


3、跳转语句

跳转语句是指用关键字break或continue加上分号构成的语句。在循环体中使用跳转语句,如果某次循环体的执行中遇到break,那么整个循环语句就结束。如果某次循环体的执行中遇到continue语句,那么本次循环结束,即不再执行continue后面的语句,转入进行下一次循环。

0 0