在java中,控制执行流程涉及的关键字包括if-else、while、do-while、for、return、break以及选择语句switch。
if-else
if-else是控制程序流程的最基本的形式。其中else是可选的
if(条件表达式){
代码部分
}
</pre><pre class="java" name="code">
</pre><p class="java" name="code">或</p><pre class="java" name="code">if(条件表达式){
代码部分
}else{
代码部分
}
当代码部分只有一句语句时大括号可以省略但最好别那么做。
迭代
while、do-while和for用来控制循环,直到他们的表达式为false时退出。
while(条件表达式){
代码部分
}
do{代码部分}while(条件表达式);
while和do-while唯一的区别就是do-while中的语句至少会执行一次,即使表达式第一次就被计算为false;
for(初始化,条件表达式,步进){
代码块
}
for循环的执行过程为初始化-条件表达式-代码部分-步进-条件表达式-代码部分-步进直到条件表达式的结果为false时退出。
foreach
foreach是用于数组和容器的更加简洁的for语法
例子:
int[] i= {1,2,3,4,5};
for(int j : i){
System.out.print(j);
}
这段代码定义了一个int型的数组i,继而将I的每一个元素赋值给j。
输出
1
2
3
4
5
return
return关键字有两个方面的用途:一方面指定一个方法返回什么值,另一方面他会导致当前的方法退出,并返回那个值。
如果返回void的方法中没有return语句,那么在该方法的结尾处会有一个隐式的return。
break和continue
break用于强制退出他所在的最内层循环,不执行循环中剩余的语句。而continue则停止执行当前的迭代,然后退回循环起始处,开始下一次迭代。
无穷循环的两种方式:
while(true){
}
for(;;){
}
编译器将会把他们看作同一回事。
switch
switch语句可以从一系列代码中选择一段去执行
switch(表达式){
case 条件1 : 代码段;break;
case 条件2 : 代码段;break;
case 条件3 : 代码段;break;
case 条件4 : 代码段;break;
case 条件5 : 代码段;break;
case 条件6 : 代码段;break;
//....
default : 代码段;
}
注意:当条件匹配时switch会在第一次之后的代码段中遇到break时退出(case穿透),当没有匹配的条件时执行default后面的代码。switch中的表达式结果必须是int、char那样的整数值(jdk7开始可以使用String类型值)