Ⅳ 控制执行流程
4.1 true和false
- 在C和C++中,可以将一个整数直接用作布尔值(非零即为真,零为假)。但是这在Java中是不允许的。
4.3.3逗号操作符
- 这边要注意一下是逗号操作符而不是逗号分隔符。Java中唯一用到逗号操作符是在for循环的控制表达式。
举个例子:
for (int i=1,j=i+10;i<5;i++,j=i*2){
//dosomething
}
4.7 臭名昭著的goto
-
goto起源于汇编语言的程序控制:若条件A成立,则跳到这里;否则跳到那里。
goto语句是在源码级上的跳转,因为程序若总是从一处跳到另一处,将很难识别其流程控制,这也是他招致恶名的原因。 -
对于这个问题,关键并不在于goto的使用,而是在于goto的滥用;而且在一些少数情况下,goto是组织控制流程的最佳手段。
-
goto是Java的一个保留字,但是Java并未使用它。
break
与continue
能完成一些类似于跳转的工作。他们不是跳转,而是中断迭代的一种方法。他们与goto使用了相同的机制:标签。 -
下面有一些规则:
- 一般的
continue
会退回到内层循环的开头,并继续执行。 - 带标签 的
continue
会到达标签的位置,并重新进入紧接在这个标签之后的循环。 - 一般的
break
会中断并跳出当前循环。 - 带标签的
break
会中断并跳出标签所指的循环。
注意,Java中需要使用到标签的唯一理由就是因为有循环嵌套存在,而且想从多层嵌套中break
和continue
。
- Java中的标签不会存在goto的问题,因为他们的应用场合已经受到了限制。
这一章较简单,需要记录的比较少。
网友评论