Java中的流程控制

一、顺序结构

从上倒下、从左到右依次运行

二、分支结构

2.1 判断结构

if(逻辑值){
	//代码块;
}

在这里插入图片描述
如果代码块只有一句,{}可以省略不写, 但是最好写上,增加可读性。

if(逻辑值){
	//Code1;
} else {
	//Code2;
}

在这里插入图片描述

if(逻辑值1){
	//Code1;
} else if(逻辑值2) {
	//Code2;
} else {
	//Code3;
}

执行顺序:
先执行逻辑值1,
如果逻辑值1为true,则执行代码快1.
接着执行逻辑值2,如果逻辑值2为true,
则执行代码快2,以此类推。

2.2 选择结构

switch(表达式){
	case 情况1 : Code1;break;
	case 情况2 : Code2;break;
	……
	default:Code;break;
}

注意:
1.表达式的结果是byte/short/int/char
2.从JDK1.7开始,允许匹配字符串
3.从JDK1.5开始,允许匹配枚举常量
4.当选项后边都有break的时候,选项之间的顺序没有影响;如果有一个或者以上选项之后没有break,选项之间的顺序就会有影响。
5.在switch中,只有遇到break或者执行到switch语句的末尾才会结束。

面试问题(坑):

int i = 0;
switch(i){
	case 0: int j = 0;     //在此处定义的j,局部变量。生命周期只在switch语句中有效
	case 1: j+=1;
	case 2: j+= 2;
	case 3:j+=3;
	default:j+=4;
}
System.out.printlnt(j); //编译错误,变量没有定义
  //出了switch语句,j已经失效了。会报未定义错误
如果判断的是一个范围的时候,建议使用if else if语句;
如果情况相对比较固定的时候,建议使用switch语句。

三、 循环结构

while(逻辑值){
	//Code;
}

在这里插入图片描述

循环的要素:
1、定义循环变量、
2、控制判断条件、
3、改变循环变量

do{
	//Code;
} while(逻辑值); // (分号一定不能少)

在这里插入图片描述
do-while循环的代码块至少执行一次

for(定义循环变量; 控制判断条件; 改变循环变量){
	//代码块;
}
当循环的次数固定或者步长固定建议使用for循环
当循环次数不定或者变化不规律的时候建议使用while
while循环的循环变量定义在循环体外,循环结束之后循环变量依然可以使用;for循环的循环变量定义在循环体内,循环结束之后就不能再继续使用了。

for循环更省内存,因为执行完for循环之后,循环变量的内存就会被释放。在实际使用中,while循环和for循环是交叉使用的。

四、break和continue

break:用于选择或者循环语句中,表示结束当前一层语句

continue:用于循环语句中,表示跳出当前循环继续下次循环
这两个关键字必须结合相应的语句使用,单独存在没有意义,因此单独存在的时候编译报错

循环支持标号形式。当需要一次性跳出多层循环的时候,可以使用标号形式(代替了goto的作用)。但是不推荐,不常用。降低了程序的阅读性。标号:可能在面试的笔试中出现。
例:

Outer:for(int i = 0; i < 6; i++){
	Inner:for(int j = 0; j < 5; j++){
		if(j == 3){
			break Outer;
		}	
	}	
}
 //直接跳出了外层循环。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值