在Java的控制语句中,涉及的关键字包括:if-else,while,do-while,for,return,break,switch.java没有goto语句,但有类似功能的语句。
4.1true 和false
所有条件语句都利用条件表达式的真或假来决定执行路径。例如,if(a){},其中a必须是布尔值或是能产生布尔值的表达式。
4.2 if-else
if(布尔表达式){ //布尔表达式必须产生一个布尔结果
执行语句; //简单或复合语句
}
或者:
if(布尔表达式){
执行语句;
}else{
}
4.3 迭代:while,do-while,for用来控制循环.
while(boolean-expression){ //在循环刚开始时,会计算一次布尔表达式的值,在下一次迭代开始前会再计算一次 ,直到值为“假”才停止
statement;
}
4.3.1do-while:
do
statement; //与while唯一区别:至少执行一次
while(boolean-expression);
4.3.2 for(初始化;布尔表达式;步进表达式){ //每次迭代前都会检查布尔表达式
} //初始化和步进表达式都可以通过逗号操作符定义多个变量,但必须具有相同的类型
例如:for(int i=1,j=i+1;i<5;i++,j=i*2)
4.4 Foreach 语法
import java.util.Random;
public class StringOperator {
public static void main(String[] args) {
Random rand=new Random(47);
float f[]=new float[10]; //不理解????????
for(int i=0;i<10;i++){
f[i]=rand.nextFloat();
}
for(float x:f){
System.out.println(x); //foreach用法,把f数组的每个值赋给x
<span style="font-family: Arial, Helvetica, sans-serif;">}</span>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="white-space:pre"> </span>}</span>
<span style="font-family: Arial, Helvetica, sans-serif;">}</span>
4.5return
指定一个方法返回什么值,同时导致当前的方法退出,并返回那个值。对于返回void的方法,结尾处有一个隐式的return。
4.6 break和continue ,都可控制循环的流程。
break:强制退出循环,不执行循环中的剩余部分;
continue:停止当前的迭代,退回到循环起始处,开始下一次迭代。
4.7 java没有“goto”
outer: //标签,必须放在迭代之前,最好这之间不置入任何语句
for(){ //外部迭代
for(){ //内部迭代
break; //中断内部迭代,回到外部迭代
continue; //停止当前迭代,使执行点回到内部迭代开始处,进行下一次迭代
break outer; //中断所有迭代,回到标签处,但不重新进入迭代;如果没有这个语句,就不能从内部循环跳出外部循环
continue outer; //同时中断内部迭代和外部迭代,直接转到标签处,从下一次外部迭代开始
}
} //如果想在中断循环时退出,用一个return即可。
4.8 switch(整数选择因子){ //整数选择因子是一个能产生整数值的表达式,switch将这个结果与每个整数值比较
case 整数值1:statement;break; //这个值必须是int或char那样的整数值,若是字符串或浮点数则switch不工作
............................. //在case语句中,只用单引号引起的字符也会产生用于比较的整数值
default:statemnet;
}
例如,switch(c){
case'a':
case'b':
case'c':
case'd':print("结果"):break; //多重匹配,输出四个结果并退出
}