说一下java的流程控制(程序结构),其实对于计算机而言,无非就那几类执行流程(程序结构),程序从头到尾依次执行每一行代码,这就是顺序结构;也可能在执行过程中遇到条件判断,造成程序运行产生分支,这就是分支结构(判断结构);也可能有一段代码需要重复执行多次,这便是循环结构,不管是哪种结构都是可以相互嵌套的。接下来详细介绍一下分支和循环。
分支结构
java中分支流程的控制通过条件判断实现,语法有以下几种
if…else
if (2 > 3) {
System.out.println("当2>3时走这里。。。");
}else {
System.out.println("当2<=3时走这里。。。");
}
if…else if
if…else if…else
int flag = 6;
if (flag < 5) {
System.out.println("flag小于5");
}else if (flag == 5) {
System.out.println("flag等于5");
}else if (flag > 5) {
System.out.println("flag大于5");
}else{
System.out.println("测试一下");
}
switch()…case…
这里说一下,switch中的key只能是 short 、int 、byte 、char 、String 这几种类型的数据
//short int byte char String
int key = 3;
switch (key) {
case 1:
System.out.println("当前输入的是1");
break;
case 2:
System.out.println("当前输入的是2");
break;
case 3:
System.out.println("当前输入的是3");
break;
case 4:
System.out.println("当前输入的是4");
break;
case 5:
System.out.println("当前输入的是5");
break;
default:
System.out.println("当前输入的是乱七八糟");
break;
}
循环结构
Java中循环结构的实现语法有以下几种
for (int i=0 ; i < len ; i++) {}
for (int i = 0; i < 6; i++) {
System.out.println("当前循环的次数:"+(i+1));
}
while(true){}
int j = 1;
while (j < 6) {
System.out.println("当前循环的次数:"+j);
j++;
}
do … while(true){}
不同于while之处在于,无论do…while中while的条件是否成立,do中代码都会先执行一次
int k = 9;
do {
System.out.println("就算是条件不满足也会走一次:k="+k);
k++;
} while (k < 8);
如果在循环流程中突然想退出了(循环还未执行完毕),也是有办法的,java提供了continue和break两个关键字,介绍一下作用:break指的是结束循环,结束break所在循环结构的循环操作,及不再进行后边的循环;conutiune指的是跳出循环,跳出conutiune所在循环的本次循环,仅仅只是本次循环不再执行,但是还继续进行后边的循环。
只用文字说明并不一定那么深入人心,需要自行实验,基本用法如下:
跳出单层循环,直接跳出即可
for (int j = 0; j < 6; j++) {
System.out.println("当前循环的次数:j="+j);
if (j == 4) {
System.out.println("当j == 4时,结束循环,后边的循环不执行了");
break;
}
System.out.println("因为j != 4,所以才会走这里。。");
}
跳出多层循环中的指定循环,主要操作在于给循环一个标记名(自定义即可,下边代码中外层for的标记名是out),想跳出的时候直接break 指定循环的标记即可
out : for (int i = 0; i < 6; i++) {
for (int j = 0; j < 6; j++) {
System.out.println("当前循环的次数:j="+j);
if (j == 4) {
System.out.println("当j == 4时,结束for循环out,后边的循环不执行了");
break out;
}
System.out.println("因为j != 4,所以才会走这里。。");
}
}
基本的操作还是需多练习才能融会贯通。