Java复习知识点五:Java程序控制结构,if else,switch,while,do while的使用

Java程序控制结构:

  • 顺序控制
  • 分支控制
    – if else
    – switch
  • 循环控制
    – for
    – while
    – do while

1、顺序控制

程序从上到下的逐行的执行,中间没有任何判断和跳转

在这里插入图片描述

2、分支控制(if else和switch)

  1. 单分支
  2. 双分支
  3. 多分支

2.1、单分支

基本语法:

if (条件表达式) {
	执行代码块;(可以有多条语句)
}

条件表达式为true时,就会执行{}里的代码,如果为false,就不执行

特别说明:如果{}中只有一条语句,则可以不用写{}。但建议写上。

2.2、双分支

基本语法:

if (条件表达式) {
	执行代码块1;
} esle {
	执行代码块1;
}

当条件表达式成立时,执行代码块1,否则执行代码块2

如果执行代码块只有一条语句,则{}可以省略不写

2.3、多分支

基本语法:

if (条件表达式1) {
	执行代码块1;
} 
esle if (条件表达式2){
	执行代码块2;
}
......
else {
    执行代码块n;
}

特别说明:

(1)多分支可以没有else,如果所有的条件表达式都不成立,则一个执行入口都没有

(2)如果有else ,如果所有的条件表达式都不成立,则默认执行else

2.4、嵌套分支

在一个分支结构中又完整的嵌套了另一个完整的分支结构,里面的分支的结构称为内层分支外面的分支结构称为外层分支

建议:不要超过3层(可读性不好)

基本语法:

if () {
	if () {
		//if - else ....
	} else{
		//if - else ....
	}
}

2.5、switch分支结构

基本语法:

switch(表达式){

	case 常量1 : //可以理解为“当...”
	语句块1;
	break;
	
	case 常量2 : 
	语句块2;
	break;
	...
	case 常量n : 
	语句块n;
	break;
	
	default:
	default语句块;
	break;
}

switch解读:

1、switch 关键字,表示switch分支

2、表达式 对应一个值

3、表达式值与case常量1的值匹配,则执行语句块1,如果没有匹配,就继续匹配case常量2

4、break表示退出switch结构

5、如果一个都没匹配上,则执行default

2.5.1 switch使用细节
  1. switch后表达式的数据类型应和case常量类型一致,或者是可以自动转换成相互比较的类型,比如表达式中是char,而case后的常量是int
  2. switch表达式的返回值必须是:( byte,short,int,enum[枚举],String)中的一种
  3. case子句中的值必须是常量,而不能是变量
  4. break语句用来执行完一个case分支后跳出switch语句块;
  5. 如果没有写break,程序会顺序执行到switch结尾,

2.6、switch和if的比较

  1. 如果判断的具体数值不多,而且符合byte、short , int、char,enum[枚举],String这6种类型。虽然两个语句都可以使用,建议使用swtich语句。
  2. 其他情况:对区间判断,对结果为boolean类型判断,使用if,if的使用范围更广

3、for循环控制

基本语法:

for (1循环变量初始化; 2循环条件; 4循环变量迭代){
	3循环操作(可以多条语句);
}

执行顺序:
   	1循环变量初始化;
    2判断循环条件;
	3执行循环操作;
    4循环变量迭代;
循环条件为false时,结束循环

使用细节:

  1. for关键字后括号内的变量初始化和变量迭代可以写到其他地方,但两边的分号不能省略

    int i = 1;
    for ( ; i <= 10; ){
    	System.out.println("你好,世界!" + i);
    	i++;
    }
    
    //使用情景:在for循环之后还想使用变量i 
    //补充
    for ( ; ; ){ //表示一个死循环
        System.out.println("你好,世界!");
    }
    
  2. 循环变量初始化可以有多条初始化语句,**但要求类型一样,**并且中间用逗号隔开,循环变量迭代也可以有多条,用逗号隔开

    int count = 3;
    for(int i = 0, int j = 0; i < count; i++, j++){
    	System.out.ptint("i=" + i + "j=" + j);
    }
    

for循环的编程思想:

  • 化繁为简
  • 先死后活

4、while循环控制

基本语法:

1循环变量初始化;
while (2循环条件) {

	3循环体(语句);
	4循环变量迭代;
	
}
//执行顺序 1,2,3,4

使用细节:

  1. 循环条件是返回一个布尔值的表达式
  2. while循环是先判断再执行语句

5、do…while循环控制

基本语法:

1循环变量初始化;
do {

	2循环体(语句);
	3循环变量迭代;
	
} while(4循环条件);

//执行顺序 1,2,3,4

使用细节:

  1. do while是关键字
  2. 也有循环四要素,只是为位置不一样
  3. 先执行,在判断,也就是说,一定会执行一次
  4. 最后有个分号;

6、多重循环控制

将一个循环放在另一个循环体内,就形成了其那套循环

建议最多不要超过三层循环,否则可读性太差

7、跳转控制语句-break

break语句用于终止某个语句块的执行,一般使用在switch或者循环[for , while , do-while]中

基本语法:

{
	...
	break;
	...
}

使用细节:

break语句出现在多层嵌套语句中时,可以通过标签指明要终止的是哪一层语句块

lable1:{
	...
	lable2:{
		...
		lable3:{
			...
			break lable2;
			...
		}
	}
}
  1. break 语句可以指定退出哪一层
  2. lable1 是标签名,名字可以起任意标识符
  3. 建议不使用标签
  4. 如果 break 没有指定哪一层,默认退出最近的循环体

8、跳转控制控制语句-continue

用于结束本次循环,继续执行下一次循环

也可配合标签使用

9、跳转控制语句-return

return语句表示:跳出当前所在的方法

若return写在main方法中,会退出程序

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值