与任何程序设计语言一样,Java使用条件语句和循环结构确定控制流程。
一、条件语句
在Java中,条件语句的形式是:if(条件表达式){执行的代码块}(如果要执行的代码只有一行,可省略大括号),当执行的条件为真(true)时,执行块中的语句,只执行一次结束条件语句。
还可以再追加else关键字,表达式结果为假(false)时执行,可以理解为:如果是真的(if)不然就是(else),if条件都不满足就执行else
如果只有if和else的组合可能无法满足,多个比较复杂的选择条件情况。因此,可将一起使用他们组成 else if()使用。
二、循环结构
1、while和do...while
当条件是true时,while循环执行一条语句或一个语句块,如果开始时条件为false则一次也不执行,如果条件一直为true则一直执行。
do...while(),与while不同,先执行do后边的语句或语句块,再判断while条件,条件为true再循环否则终止循环。
2、确定循环
for循环语句是支持迭代的一种通用结构,由一个计数器或类似的变量控制迭代次数,每次迭代后这个变量将会更新。
格式:for( "一般定义初始变量且只执行一次","判断条件不满足则终止,每次判断是否可循环前执行","一般是自增语句,一次循环完成后执行") {要执行的代码}
3、泛型for each循环
foreach是一种功能很强的循环结构,与C#中的foreach使用方式差不多,循环遍历数组或集合的元素,不必考虑下标值。
foreach(类型 变量名 :集合或数组){ 代码块}
三、多重选择
在处理很多个选项时,用if 和else就很蠢,代码也不好看。这种情况下可以使用switch语句。
switch(要选择的选项变量名){
case 选项值A:{
代码块
break;
}
case 选项值B:{
代码块
break;
}
default: {
默认选项,如果没有与选择的选项相符的,就会执行这里
break;
}
}
思考一下,如果不加break,会怎么样?答案是会得到不完全正确的结果。改一下上边的例子可见:
四、中断控制流程的语句
Java有两个语句可以跳出循环,一个是break,语义是跳出本层循环,一个是continue,语义是跳出本次循环。当然还有return语句也可以做到中断控制流程,但return是终止方法并返回指定类型,与break和continue不同。
break和continue的使用:
return的使用