if条件语句
if条件语句是一个重要的编程语句,告诉程序在某条件成立的情况下执行某段语句,而在另一种情况下执行另外的语句。
关键字if之后是作为条件的“布尔表达式”,表达式返回的结果为true,则执行其后的语句;若为false,则不执行if条件之后的语句。
if条件语句可分为简单的if条件语句、if···else语句和if···else if多分支语句。
简单的if条件语句
语法格式:
if(布尔表达式){
// 语句序列
}
如果布尔表达式结果为true,执行if中的语句,否则不执行。
if条件语句的执行过程
代码示例:判断x,y大小
int x = 45;
int y = 54;
if(x > y){
System.out.println("x>y")
}
if(x < y){
System.out.println("x<y")
}
if···else语句
语法格式:
if(布尔表达式){
// 语句序列1
}else{
// 语句序列2
}
如果布尔表达式结果为true,则执行if中语句,否则执行else中语句。
if···else语句的执行过程
代码示例:判断x,y大小
int x = 45;
int y = 54;
if(x > y){
System.out.println("x>y")
}
else{
System.out.println("x<y")
}
if···else if多分支语句
语法格式:
if(布尔表达式1){
// 语句序列1
}else if(布尔表达式2){
// 语句序列2
}else{
// 语句序列3
}
表达式1成立,执行语句1,否则表达式2成立,执行语句2,否则执行语句3
代码示例:根据分数的多少,判断成绩
if(score >= 90){
System.out.println("优秀");
}else if(score >= 80 && score < 90){
System.out.println("良好");
}else if(score >= 70 && score < 80){
System.out.println("中等");
}else if(score >= 60 && score < 70){
System.out.println("及格");
}else if(score >= 0 && score < 60){
System.out.println("不及格");
}else{
System.out.println("错误数据");
}
注意:
if语句只会执行条件为真的命令语句,其他语句都不会执行!!!
switch多分支语句
语法格式:
switch(表达式){
case 常量值1:{
语句1;
[break;]
}
case 常量值2:{
语句2;
[break;]
}
...
default:{
内容都不满足时执行语句;
[break;]
}
}
1.switch语句首先计算表达式的值,如果表达式的值和某个case后面的常量值相同,则执行该case语句后面的语句,直到遇到break语句为止。
2.如果常量和表达式的值没有匹配项,则执行default。
switch多分支语句的执行流程图:
代码示例:根据day的值输出星期几
int day = 1;
switch(day) {
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
case 3:
System.out.println("星期三");
break;
case 4:
System.out.println("星期四");
break;
case 5:
System.out.println("星期五");
break;
case 6:
System.out.println("星期六");
break;
case 7:
System.out.println("星期日");
break;
default:
System.out.println("输入有误");
break;
}
注意:
1.同一个switch语句,case的常量值必须互不相同。
2.break不能遗漏,否则会失去 “多分支选择” 的效果
3.switch的括号内只能是以下类型的表达式:
基本类型:byte、char、short、int,注意不能是long类型
引用类型:String常量串、枚举类型