第四章 控制执行流程

4.1 true和false
1、java不允许将一个数字作为布尔值使用。C和C++是允许的(“真”是非零,“假”是零)
4.2 if-else
1、if-else是控制程序流程的最基本的形式。
4.3 迭代
1、while
4.3.1 do-while
1、while和do-while唯一的区别就是do-while中的语句至少会执行一次。即便表达式第一次就被计算为false。而在while循环结构中,如果条件第一次就为false,那么其中的语句根本不会执行。在实际应用中,while比do-while更常用一些。
4.3.2 for
4.3.3 逗号操作符
1、java里唯一用到逗号操作符的地方就是for循环的控制表达式。在控制表达式的初始化和步进控制部分,可以使用一系列由逗号分隔的语句;而且那些语句均会独立执行。
2、通过使用逗号操作符,可以在for语句内定义多个变量,但是它们必须具有相同的类型。
4.4 Foreach语句
1、foreach语法,表示不必创建int变量去对由访问项构成的序列进行计数,foreach将自动产生每一项。
2、for(float x:f) 定义了一个float类型的变量x,继而将每一个f的元素赋值给x。
4.5 return
1、如果在返回void的方法中没有return语句,那么在该方法的结尾处会有一个隐式的return。因此在方法中并非总是要有一个return语句。但是如果一个方法声明它将返回void之外的其他东西,那么必须确保每一条代码路径都将返回一个值。
4.6 break和continue
1、break用于强行退出循环,不执行循环中剩余的语句。
2、continue则停止执行当前的迭代,然后退回循环起始处,开始下一次迭代。
4.7 goto
1、label1:
outer-iteration{
Inner-iteration{
break; //(1)
continue; //(2)
continue label1; //(3)
break label1;//(4)
}
}
在(1)中,break中断内部迭代,回到外部迭代。
在(2)中,continue使执行点移回内部迭代的起始处。
在(3)中,continue label1同时中断内部迭代以及外部迭代,直到转到lable1处;随后,它实际上是继续迭代过程,但却从外部迭代开始。
在(4)中,break lable1也会中断所有迭代,并回到lable1处,但并不重新进入迭代。也就是说,它实际是完全中止了两个迭代。
2、同样的规则亦适用于while
①一般的continue会退回最内层循环的开头(顶部),并继续执行、
②带标签的continue会到达标签的位置,并重新进入紧接标签在那个标签后面的循环。
③一般的break会中断并跳出当前循环。
④带标签的break会中断并跳出标签所指的循环。
3、在Java里需要使用标签的唯一理由就是因为有循环嵌套存在,而且想从多层嵌套中break或continue。
4.8 switch
1、switch中每个case均以一个break结尾,这样可使执行流程挑战至switch主体的末尾。这是构建switch语句的一种传统方式,但break是可选的。若省略break,会继续执行后面的case语句,直到遇到一个break为止。若没有发现相符的,就执行default(默认)语句。
2、switch语句时实现多路选择(也就是说从一系列执行路径中挑选一个)的一种干净利落的方法。但它要求使用一个选择因子,并且必须是int或char那样的整数值。例如,假若将一个字符串或者浮点数作为选择因子使用,那么它们在switch语句里是不会工作的。
4.9 总结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值