IT兄弟连 Java语法教程 流程控制语句 分支结构语句3
3 if-else if-else条件语句
if-else if-else的完整形式如下:
if(判断条件A){
A语句块(判断条件A的值为true,执行)
}else if(判断条件B){
B语句块(判断条件B的值为true,执行)
}else{
C语句块(判断条件A和判断条件B的值都为false,执行)
}…
当然,如果语句块中只有一条语句的话,也可以使用以下形式简化代码:
if(判断条件A) A语句块;
else if(判断条件B) B语句块;
else C语句块;
…
条件表达式被从上到下一一检查,一旦找到为真的条件,就执行与其相关的语句,而后面的语句就会被跳过,如果条件表达式都不为真,就执行最后一个else语句。最后一个else往往被作为默认条件,即如果所有其他条件都不为真,就执行最后一个else语句。如果没有最后一个else语句,而其他条件都为假,就会跳过整个分支结构语句块,继续执行后面的代码。if-else if-else语句的执行流程如图5所示。

图5 if-else if-else语句的执行流程
下面的程序将演示if-else if-else条件语句的执行流程:
public class IfElseIfElseDemo{
public static void main(String[] args){
int a = 4;
if(a > 4){
System.out.println("a大于4");
}else if(a == 4){
System.out.println("a等于4");
}else{
System.out.println("a小于4");
}
}
}
编译并运行这个程序,控制台将显示如图6所示的信息。

图6 IfElseIfElseDemo运行结果
通过结果可以看到,在整个if分支结构中,第二个表达式的值为true,执行了第二个if后代码块中的代码,然后退出了整个if分支结构,执行后续的代码。
IT兄弟连 Java语法教程 流程控制语句 分支结构语句3的更多相关文章
- IT兄弟连 Java语法教程 流程控制语句 分支结构语句1
不论哪一种编程语言,都会提供两种基本的流程控制结构:分支结构和循环结构.其中分支结构用于实现根据条件来选择性地执行某段代码,循环结构则用于实现根据循环条件重复执行某段代码.Java同样提供了这两种流程 ...
- IT兄弟连 Java语法教程 流程控制语句 分支结构语句5
5 switch-case条件语句 Java中的第二种分支控制语句时switch语句,switch语句提供了多路支持,因此可以使程序在多个选项中进行选择.尽管一系列嵌套if语句可以执行多路测试,然而 ...
- IT兄弟连 Java语法教程 流程控制语句 分支结构语句4
4 嵌套if-else条件语句 嵌套if语句是作为另一个if或else语句的目标的if语句.嵌套if语句在程序设计中非常普遍.Java中,关于嵌套if语句需要记住的是,else语句总是和同一代码块中 ...
- IT兄弟连 Java语法教程 流程控制语句 分支结构语句2
2 if-else条件语句 if-else语句的完整形式如下: if(判断条件){ A代码块(判断条件的值为true,执行) }else{ B代码块(判断条件的值为false,执行) } 当然,如果 ...
- IT兄弟连 Java语法教程 流程控制语句 循环结构语句1
循环语句可以在满足循环条件的情况下,反复执行某一点代码,这段被重复执行的代码被称为循环体,当反复执行这个循环体时,需要在合适的时候把循环条件该为假,从而结束循环,否则循环将一直执行下去,形成死循环.循 ...
- IT兄弟连 Java语法教程 流程控制语句 循环结构语句4
do-while循环 Java还有一种循环是do-while.与for.while这些在循环顶部判断条件表达式的语句不同,do-while是在循环底部进行条件表达式的检查.这意味着do-while循环 ...
- IT兄弟连 Java语法教程 流程控制语句 循环结构语句3
while循环 Java中的另外一种循环是while循环.while循环的语法格式如下: while(条件表达式){ 循环体; } 其中条件表达式定义了控制循环的条件,可以使任何有效的boolean表 ...
- IT兄弟连 Java语法教程 流程控制语句 循环结构语句2
双重for循环 如果把一个循环放在另一个循环体中,那么就可以形成嵌套循环,也就是双重for循环,当然嵌套循环也可以是for循环嵌套while循环,也可以是while循环嵌套while循环……,即各种类 ...
- IT兄弟连 Java语法教程 流程控制语句 控制循环结构1
Java语言没有提供goto语句来控制程序的跳转,这种做法提高了程序流程控制的可读性,但降低了程序流程控制的灵活性.为了弥补这种不足,Java提供了continue和break来控制循环结构.除此之外 ...
随机推荐
- C#中巧用妙法避免嵌套方式使用两个foreach循环
问题:需要对DataGridViewRow的下拉框列Item2所选内容进行判断,看是否跟数据库里面某个配置表的数据列Item1匹配.如果用两个foreach循环进行匹配,会导致逻辑复杂而且容易只bre ...
- [Go]TCP服务中增加消息队列与工作池
之前的处理中每一个连接都会创建一个主groutine , 每个连接中的主groutine中创建出读groutine 和写groutine 每个连接处理业务再单独开出一个groutine ,这样如果有1 ...
- RTP Payload Format for H264 Video
基础传输结构 rtp中对于h264数据的存储分为两层,分别是 VCL: video coding layer 视频编码层 这是h264中block, macro block 以及 slice级别的定义 ...
- 05-文档编辑与yum命令
一.Linux vi/vim vi是所有的Unix系统都会有,但是目前我们使用最多的是vim编辑器.vim具有程序编辑的能力,可以主动以字体颜色辨别语法的正确性. vim是从vi发展出来的一个文本编辑 ...
- Docker容器日志路径
/var/lib/docker/containers/容器ID/容器ID-json.log 可以通过这个路径收集日志到ES中
- ef实现一次查询多个聚合函数的字段
想用ef来写一个统计字段的语句,如下所示 select sum(price) as price_total, sum(amount) as amount_total from table1 发现似乎实 ...
- easyswoole对接支付宝,微信支付
在easyswoole中,已经开发好了相关的支付组件,只需要引入即可: composer require easyswoole/pay pay组件支持协程 支付宝 支付方法 支付宝支付目前支持 7 种 ...
- Android8.1 开关VOLTE流程分析
前言 最近有需求需要实现插卡默认打开Volte功能,顺带研究了下Volte的流程,在此做个记录 开始 从Settings设置界面入手,网络和互联网-->移动网络-->VoLTE高清通话(电 ...
- numpy中array和matrix的区别
两者相似但执行相同的运算可能得到不同的结果 显然,array只能通过dot()实现"矩阵乘法",array的"*"运算实现的是两个纬度相同的"矩阵&q ...
- RDIFramework.NET敏捷开发框架Web新增邮件中心实现便捷式的邮件收发
1.引言 邮件收发在很多业务系统中都有这样的需求,是比较正式和常用的功能.在我们的框架中提供了邮件中心功能模块,集内部邮件的收发.邮件归类.邮件星标的标记.邮件的删除与彻底删除等,邮件中心功能模块界面 ...