流程控制随笔

流程控制语句
if 语句
if单分支语句:
语法:

 * 	if(boolean表达式){
 * 		code...
 * 	}
程序执行到if语句  ,先判断 boolean表达式的值,如果是true ,则进入后面的大括号中执行里面的代码,如果为假 则 跳过后面的大括号

if的双分支语句:
语法:

* if(boolean表达式){
 * 		code1
 * }else{
 * 		code2
 * }

先判断 boolean表达式的值 ,如果为真, 则执行code 1 ,如果为假 ,则执行code2。

if的多分支语句:

 * if(boolean表达式1){
 * 		code1..
 * }else if(boolean表达式2){
 * 		code2..
 * }else if(boolean表达式3){
 * 		code3....
 * }
 * ......
 else{
  	code n......
 }

先判断 if 后的 boolean表达式1, 如果为真 ,则执行code1 后面的其他分支 全部跳过 ,如果 boolean表达式1 为假, 则跳过code1 接着判断 boolean表达式2 如果 为真 ,则执行 code2。
如果为假, 则跳过code2 ,接着判断 boolean表达式3 … 如果 所有的 if 后的 表达式 都为假, 则 执行 最后的else coden。

不要把If语句直接写在类中 (在一个类中方法和方法是同级的,不能再方法里面再创建一个方法)

switch语句
语法:

 * switch(exp){
 * 		case value1:{
 * 			code 1;
 * 			break;
 * 		}
 * 		case value2:{
 * 			code 2;
 * 			break;
 * 		}
 * 		case value3:{
 * 			code 3;
 * 			break;
 * 		}
 * 		......
 * 		default:{
 * 			code n;
 * 			
 * 		}
 * }
switch支持可以直接转为int型的类型。例如:short char  byte int

拿表达式的值和 case 后的 value 进行匹配,如果匹配的上 就执行该case 后的大括号中的内容 如果大括号中。
有break 关键字 则 中断switch case 语句,如果 exp的值 和所有的 case 后的value都没有匹配上 则 执行 default 后的内容。

break语句
break: 关键字 在 switch case 中的作用 是中断匹配,一旦执行到break ,就会中断switch case 语句,
但是 这里的break 关键字 不是必须的 ,如果没有break 则会出现 switch 穿透现象, 会穿透到 下一个case 后的
大括号中执行 而不进行匹配 , 有时 咱们会根据 switch 穿透这个特性实现某些功能。

** 注意:**
1.case 后的value 值不能重复
2.switch 后的表达式的值得类型 有要求 支持 byte short char int String Enum
3.default 语句可以省略
while语句
语法:

 *  while(boolean表达式){
 *		循环体
 * }

执行流程: 程序执行到while语句,先判断 boolean表达式的值 若表达式的值为真 则执行循环体的内容 执行完循环体之后 ,回过头来再次判断 boolean表达式的值, 如果为真 ,则 继续执行循环体 继续判断表达式的值 , 如此循环 直到 表达式的值为假, 则停止循环。若表达式的值 一直为真 ,则一直循环 。

一般情况 : 要注意控制循环的终止条件  避免出现死循环

循环结构的本质: 重复的执行循环体中的代码 , 直到不满足循环条件

循环结构:
初始化部分:指的是初始条件 , 一般是循环变量的初始值。 通过该变量可以控制循环条件的真假 ,这个变量可以称为循环变量。 (循环变量一般在boolean表达式中)

循环条件: while后小括号中的内容 , 是一个布尔表达式 , 每一次循环之前 ,都要先判断这个表达式的值。 如果为真 ,则执行循环 ,如果为假 ,则跳过循环。

循环体:大括号中的内容 就是循环体 , 可以是 一条语句, 也可以是多条语句。

迭代部分: 通常是循环体的一部分, 用来改变循环变量的值, 从而改变循环条件 ,boolean表达式的值。

关键点: 使用循环的时候 , 要对循环条件敏感 ,要知道什么时候终止循环。

Do while语句(do–while 先执行后判断,至少执行一次)
语法:

* do{
 * 	循环体
 * 	迭代部分 一般和循环体写在一起
 * }while(循环条件);
 * 

先执行一次循环体 , 再判断循环条件, 如果为真 ,则继续执行循环体 ,如果为假 ,则终止循环。

和 while 对比
while是 先判断循环条件,为真, 则循环 ,为假 ,不循环。
do while 是先执行一次循环体 ,为真 ,则循环, 为假, 不循环。 意味着 do while 的循环体至少执行一次。

For语句

语法:

 * for(初始化部分①;循环条件②;迭代部分③){
 * 		循环体 ④
 * }

执行流程:
1.先执行初始化部分 , 这部分只执行一次
2.再执行循环条件, 这个循环条件是一个布尔表达式 ,如果为真 ,则执行循环体 .如果为假, 则结束循环。
3.循环条件为真, 执行循环体。
4.循环体执行完 , 再执行迭代部分, 迭代部分的代码一般会改变循环变量的值 , 从而改变循环条件的结果, 以此来控制循环是否继续 。 也就是说 ,迭代部分执行完 ,再次执行循环条件 , 根据循环条件的结果 判断是否继续执行循环体 继续循环。

   for 循环都是先判断 后执行 

注意:循环变量的作用域问题 : 如果是在循环内部声明的变量 ,那么循环变量的作用域就只在循环语句内有效。 超出循环语句就无效 ,那么 ,如果想在for 循环外部访问 循环变量,那么 可以把循环变量声明在 循环语句之外

多重循环 : 循环嵌套

  • 一个循环体内又包含另一个完整的循环结构
    任何两种循环都可以相互嵌套
    可以任意层次循环,但是一般不超过3层

  • 多重循环执行过程
    外层循环变量变化一次,内层循环变量要变化一遍

for(int i=0;i<vakue;i++){
		for(int j =0;j<value;j++){
			循环体
		}
	}
	------------------
	while(循环条件){
		for(int i=0;i<value;i++){
			循环体
		}
	}
	
执行过程:  外层循环一次  内层循环一圈
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值