Java编程那些事儿33——if语句语法(3)
来源:互联网 发布:json解析网页 编辑:程序博客网 时间:2024/05/20 12:24
5.3.1.3 if-else if-else语句
在现实中,有些时候的条件不是一个,而是一组相关的条件,例如将阿拉伯数字转换为中文大写,根据分数转换为对应的等级等,都是多条件的结构,在程序中为了避免写多个if语句的结构,提供了一类专门的多分支语句,这就是if-else if-else语句。
if-else if-else语句的语法格式为:
if(条件1)
功能代码1;
else if(条件2)
功能代码2;
else if(条件3)
功能代码3;
……
else
功能代码;
语法说明:
1、 else if是else和if两个关键字,中间使用空格进行间隔。
2、 条件1到条件n都是boolean类型
3、 else if语句可以有任意多句
4、 最后的else语句为可选
5、 如果功能代码部分不是语句块,也就是不用大括号,就只能写一句。
执行流程:当条件1成立时,则执行功能代码1;当条件1不成立且条件2成立时,则执行功能代码2;如果条件1、条件2都不成立且条件3成立,则执行功能代码3,依次类推,如果所有条件都不成立,则执行else语句的功能代码。其执行流程的流程图如上所示。
下面是一个实现根据月份的值,输出该月份包含的日期数,2月份全部输出28,不考虑闰年的示例代码:
int month = 3;
int days = 0; //日期数
if(month == 1){
days = 31;
}else if(month == 2){
days = 28;
} else if(month == 3){
days = 31;
} else if(month == 4){
days = 30;
} else if(month == 5){
days = 31;
} else if(month == 6){
days = 30;
} else if(month == 7){
days = 31;
} else if(month == 8){
days = 31;
} else if(month == 9){
days = 30;
} else if(month == 10){
days = 31;
} else if(month == 11){
days = 30;
} else if(month == 12){
days = 31;
}
System.out.println(days);
再来看一个示例代码,该代码的功能是实现将百分制的成绩转换为A、B、C、D和E,代码如下:
int score = 87;
if(score >= 90){
System.out.println(‘A’);
} else if(score >= 80){
System.out.println(‘B’);
} else if(score >= 70){
System.out.println(‘C’);
} else if(score >= 60){
System.out.println(‘D’);
} else{
System.out.println(‘E’);
}
从该代码中可知,每个else if语句在书写时是有顺序的,在实际书写时,必须按照逻辑上的顺序进行书写,否则将出现逻辑错误。
if-else if-else语句是Java语言中提供的一个多分支条件语句,但是在判断某些问题时,会书写的比较麻烦,所以在语法中提供了另外一个语句——switch语句来更好的实现多分支语句的判别。
- Java编程那些事儿32—if语句语法(2)
- Java编程那些事儿32—if语句语法(2)
- Java编程那些事儿33——if语句语法(3)
- Java编程那些事儿33——if语句语法(3)
- Java编程那些事儿31——if语句语法(1)
- Java编程那些事儿31——if语句语法(1)
- Java编程那些事儿34——switch语句语法
- Java编程那些事儿35——while语句语法
- Java编程那些事儿34——switch语句语法
- Java编程那些事儿35——while语句语法
- Java编程那些事儿36—do-while语句语法
- Java编程那些事儿37—for语句语法
- Java编程那些事儿36—do-while语句语法
- Java编程那些事儿37—for语句语法
- Java编程那些事儿44—数组基础语法
- Java编程那些事儿38—break和continue语句
- Java编程那些事儿38—break和continue语句
- Java编程那些事儿15——如何学好Java语法
- 考试临近——在即
- 小程序代码寻求帮忙理解
- debian 的更新源
- rootkit for linux 19.山寨tcpip协议栈--连接的建立和初始化.doc
- 晕,我要下东西
- Java编程那些事儿33——if语句语法(3)
- 在winform中使用多线程 并跨线程操作按钮及文本框
- 2009计算机新趋势:节能电脑大行其道。
- 网站项目成功的关键是什么?
- 关于extern的问题
- HttpModule详解
- 使用wubi在windows中安装ubuntu8.10
- IIS配置错误列表,和详细解决方案(积累中)
- MyEclipse启动tomcat问题:please verify the preferences field with the prompt :can not find a free socket,郁闷了半天