赞
踩
Java中有三种流程控制结构:顺序结构、选择结构、循环结构
顺序结构:顺序结构指的是程序自上而下一次执行的每条语句,中没有任何的判断和跳转,前面所有的结构都是顺序结构
选择结构:
选择结构根据判断条件的结果来执行不同的代码.Java提供if控制语句、switch语句来实现选择结构
循环结构:
根据判断条件来重复执行某块代码。Java提供、while语句,do-while语句、for语句来实现循环结构
if语句的语法格式如下:
if(表达式){
语句块
}
if是java中的关键字
表达式是布尔类型的表达式,其结果是true或false
执行步骤:
1.对表达式的结果进行判断
2.如果表达式是真(true),执行语句块
3.如果表达式是假(f
if语句由条件表达式和紧随其后的语句组成,如果if条件表达式后面有多个语句,千万别忘记在多个语句的前后添加一对花括号
注意:
if(表达式){
语句块1;
语句块2;
}
示例1
需求:
请实现如果成绩大于等于60分,就输出“成绩合格,考试通过”;
分析:
从需求上看,条件判断就是大于等于60分
if(成绩>=60){
输出出成绩;考试通过
}
实现步骤:
1为了保存成绩的变量score变量赋值
2.使用if语句判断成绩是否大于等于60,如果大于等于60,则输出信息“成绩及格,通过考试”
if-else语句的语法如下:
if(表达式){
语句块
}else{
语句2
}
当表达式为true时,执行语句块1;
表达式为false时,执行语句块2
注意:
1.if-else语句由if和紧随其后的else组成
2.else语句不能单独使用,它必须是if语句的一部分,与最近的if语句配对使用
示例2:
报错
(3).使用多分支if语句实现多分支处理
当多个条件判断时,需要使用多分支语句来解决
多分支if语句的语法格式:
if(表达式1){
语句块1
}else if(表达式2){
语句块2
}else{
语句块3
}
多分支语句的执行步骤:
1.对表达式1的结果进行判断
2.如果表达式1的结果为true,则执行语句块1,否则判断表达式2的值
3.如果表达式2的结果为true,则执行语句块2,否则执行语句块3.
注意:
不论多分支if语句中由多少个条件表达式,只会主席那个符合条件的一个,如果没有符合条件的,则才执行else子句中的语句。
示例3
需求:
如果成绩大于等于90分,且小于等于100分,输出“A级”;否则如果大于等于80分,输出“B级”
否则如果大于等于70分,输出“C级”;否则大于等于60分,输出“D级”,低于60分,输出“无所谓无惧”
实现步骤:
1.保存成绩的变量,变量赋值
2.使用多分支if语句进行判断
注意:
1.在上述的if控制语句中,条件表达式必须是布尔类型的,这是java与c语言和C++的不同之处
在if控制语句中包含一个或者多个if控制语句,称之为嵌套if控制语句,嵌套if控制语句可以通过外层语句和内层语句的协作,来增强程序的灵活性
嵌套if控制语句的语法格式如下:
if(表达式1){
if(表达式2){
语句1
}else{
语句2
}
}else{
if(表达式3){
语句3
}else{
语句4
}
}
嵌套if控制语句的执行过程:
1.对表达式1进行结果判断
2.如果表达式的结果为true,再判断表达2的结果判断。如果表达式2的结果为true,则执行语句1;否则。再判断表达式2的值
3.如果表达式1的结果为false,对表达式3的结果进行判断,如果表达3的结果为true,则执行语句3;
否则,判断表达式4的值
示例4:
需求:
请实现如果今天是周六或者周日,则外出开黑,如果气温再30度以上,去游泳;否则就去爬山
如果今天不是周六或者周日,就要工作·,如果天气好,去客户单位谈业务;否则就在公司上网查资 料。
分析:
1.外层的if控制语句来判断是否是工作日
2.内层的if控制语句判断天气状况
实现的步骤:
1.使用if控制语句判断今天是否是周日或者周六
2.如果是周六或者周日,那么进一步去判断气温是否在30度以上
3.如果不是周六周日,那么去判断天气是否好
java中还提供了switch语句来实现多分支的选择结构,它和多分支if语句结构,在某些情况下,可以相互替换
switch语句语法的格式:
switch(表达式){
case常量1:
语句
break;
case常量2:
语句
break;
........
default:
语句;
break;
}
switch、case、break、default都是java中的关键字
switch的表达式只能是字符型、枚举型、整数型
case用于表达式匹配
default是选择的,当其他不匹配时,执行default
注意:
如果case后没有break语句,程序将会继续向下执行,直到遇到break语句或switch语句结束
switch语句执行的步骤:
1.计算switch语句中的表达式的值
2.将计算结果从上至下依次和case常量值进行做比较
3.如果相等就执行该常量后的代码块,遇到break语句后,结束
4.如果与任何case后的常量值都不匹配,就执行default中语句。
示例5:
解析:
3.2.1循环结构
Java中循环控制语句:while循环、do-while循环、for循环。循环结构的特点,在给定的条件成立时,反复执行某一段程序,直到条件不成立为止
循环语句的主要的作用:
反复执行某一段程序,直到不满足一定的条件为止:把循环分为3部分:
1.初始化部分:设置循环的初始状态
2.循环体:重复执行的代码
3.循环的条件:判断循环的条件,例如使用"i<100"判断循环的次数是否达到100次
1.while循环
while循环的语法格式:
变量的初始化
while(循环条件){
循环体
}
while也是java中的关键字,小括号的内容是循环条件
循环条件是一个布尔表达式,它的值是true或false
大括号中的语句统称为循环操作,或者叫循环体
注意:
while语句是先执行判断循环条件,再执行循环体
如果第一次判断循环条件为false(假),循环将一次不执行
while语句的执行步骤:
1.首先对循环条件的结果进行判断,如果为真,则执行循环语句
2.执行完毕后,继续对循环条件进行判断,如果为真,继续执行
3.如果结果是假(false),跳出循环语句,去执行后面的语句
示例6
需求:
实现:
1+2+3+.....+100的求和计算
实现步骤:
1.首先定义一个变量sum,代表总和,初始值为0;
2.定义循环变量i;依次取1~100之间的每个数,初始值为1
3.当i<=100时,重复进行加法操作,将sum+i的值再赋给sum,每次相加后,将i的值递增
4.当i的值变成101时,循环条件为false,则退出循环,并输出最终的结果
2.do-while循环
do-while循环语句的语法格式如下:
变量初始化
do{
循环体
}while(循环条件)
1.do-while以关键字do开头
2.大括号括起来的就是循环体
3.最后while关键字和紧随其后小括号括起来的就是循环条件
do-while语句执行的步骤:
1.首先执行循环体
2.执行完毕后,对循环条件的结果进行判断
3.如果结果为真,则继续执行循环体,否则,终止循环,执行后面的语句
注意:
do-while先执行循环体,再执行循环条件,所以循环体至少执行依次,这点和while循环相反
示例7
两个结果一致
实现步骤:
1.和while语句基本相同,先定义变量sum和变量i并赋值
2.然后执行循环
3.差别是先执行循环体,再判断循环条件,与while语句相反
3.for循环
for循环的语法格式如下:
for(表达式1;表达式2;表达式3){
循环体
}
或者更直观的表示为:
for(变量的初始化;循环条件;修改循环变量的值){
循环体
}
1.for循环以关键字for开头
2.大括号括起来的是循环体
3.表达式1;表达式2;表达式3,分别用来实现变量的初始化,判断循环条件和修改循环变量的值
for语句的执行步骤:
1.首次执行表达式1,一般进行变量初始化的操作
2.然后执行表达式2,即对循环条件进行判断
3.如果结果为真,则执行循环体
4.循环语句执行完毕后执行表达式3,改变循环的变量的值,再次执行表达式2;
如果结果是真,继续循环
5.如果结果是假,终止循环,执行后面的语句
注意:
1.无论循环多少次,表达式1只执行1次
2.for语句和while语句功能相似,都是先判断条件再执行,只是采用了不同的语法格式
示例8
需求:
输入一个学生的姓名和他五门课的成绩,求出平均值,输出结果
实现步骤:
1.获得键盘输入一名学生的名字
2.获得键盘输入这名学生的5门课的成绩,因为5门课,也就是固定了循环次数5次,首选for循环
循环操作接收该学生的每门课的成绩,并累加,以获得5门课的总成绩
3.求出平均分在控制台上输出结果
4.多重循环
多重循环指一个循环体中再包含一个循环语句,又称之为嵌套循环。循环语句内可以嵌套多层循环,同时不同的循环语句可以相互嵌套
多重循环的语法格式:
while(循环条件1){
循环语句1
for(循环条件2){
循环语句2
}
}
1.这是while循环语句和for循环语句嵌套的例子,其中while循环称之为外层循环,for循环称之为内层循环,因为是两层循环,称为二重循环
2.该二重循环执行的过程:外层while循环每循环依次,内层for循环就从头到尾完整的执行一遍
示例9
需求:
计算若干个学生每人5门课程的平均分
1.循环接收一个学生的5门课成绩,求出平均分
2.使用多重循环
分析:
在上述需求中,外循环一次处理一个学生的姓名和录入平均分计算,内循环处理每个学生的5门课成绩,也就是说,外循环每执行一次,内循环执行5次
5.循环的对比
1.语法格式的不同
2.执行的顺序不同:
(1).while循环:先判断循环条件,再主席那个循环体,如果条件不成路,退出循环
(2).do-while循环:先执行循环体,再判断循环条件,循环体至少执行一次
(3).for循环:先执行变量初始化部分,再判断循环条件,然后执行循环体,最后进行循环变量的计算
如果条件不成立,跳出循环
3.适用的场景不同:
在解决问题的时候,对于循环次数确定的情况下,我们使用for循环,对于循环次数不确定的情况下,通常选用while和do-while循环
3.2.2跳转语句
Java语言中支持3种类型的跳转语句:continue语句、return语句,break;使用这些语句,可以把控制转移到循环甚至程序的其他地方。
1.break语句
作用:在循环种终止当前循环,在switch语句中终止switch语句
示例10
需求:
请实现输出数字1-10,若遇到4的倍数程序自动退出
示例11
需求:
用户输入字符串并进行显示,直到输入“bye”为止,请使用break语句实现
注意:
Java中判断两个字符串是否相等,用equals()判断两个字符串的值是否相等,用“==”比较判断内存地址是否相等
示例12:
2.continue语句
作用:
强制循环提前返回,也就是让循环跳过本次循环中剩余代码,然后进入下次循环
注意:
示例14:
需求:
实现输出1-10中非4的倍数的输出
分析:
执行程序,将输出“1,2,3,4,5,6,7,8,9,循环结束”。结果中应该没有4和8
2.当i=4,i=8,满足条件,执行continue语句并没有终止整个循环,而是终止本次循环,不再执行
continue语句后的输出语句
注意:
在while循环和do-while循环中,continue执行完毕后,程序将直接判断循环条件,如果为true,则继续下次循环,否则,终止循环,而在for循环中continue使用程序先跳转到循环变量计算部分,然后再判断循环条件(理解为终止本次循坏)
3.return语句
alse),则跳过该语句块
跳出了整个语句块;
如果是break
还会输出“0000”
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。