流程控制:分支结构

本文详细介绍了Java中的基本if选择结构、双分支if-else结构和多分支if-else-if结构,以及switch-case选择结构的使用方法、执行规律和注意事项。通过实例展示了如何根据条件执行不同的代码块,以及如何在不同条件下输出不同结果。同时,强调了条件必须是布尔值以及break在switch-case结构中的作用。
摘要由CSDN通过智能技术生成

一.基本if选择结构(单分支if选择结构)

         语法结构:
            if(条件){
                 代码块1
             }
             代码块2
        如果条件为true,则执行{}里的代码块1,执行完代码块1之后,继续往下执行{}后面的代块2
        如果条件为false,则直接结束if选择结构,继续往下执行{}后面的代码块2
        注意:
        1.条件只能是布尔值,不管这么条件写的多么的简单还是多么的复杂,条件值都只能是true或者false
        2.如果代码块1只有一行语句,{}可以不写,建议不要省略

public class Demo01 {
	public static void main(String[] args) {
		/*
		 * 需求:张浩Java成绩大于90分,老师奖励他iPhone6s ,该怎么做呢?
		 */
		
		//创建键盘输入对象,获取张浩的Java成绩
		Scanner sc = new Scanner(System.in);
		
		System.out.println("请输入张浩的Java成绩:");
		double score = sc.nextDouble();
		
		//如果成绩>90,获得奖励
		if(score>90){
			System.out.println("老师奖励IPhone6s");
			System.out.println("好好学习,天天向上");
		}
		
		System.out.println("程序执行完毕");

	}

}

双分支if选择结构:if-else结构
     语法结构:
         if(条件){
             代码块1;
         }else{
             代码块2;
         }
         代码块3;
执行规律:
        如果条件为true,执行代码块1,执行完代码块1后结束整个if-else结构,执行if-else结构后面的代码块3
        如果条件为false,执行代码块2,执行完代码块2后结束整个if-else结构,执行if-else结构后面的代码块3
注意:
        1)条件不管多么的简单还是多么的复杂,都只能是布尔值,要么为true,要么为false

	public static void main(String[] args) {
		/*
		 * 如果张浩Java考试成绩大于90分,老师就奖励他一个iPhone6s 否则老师就罚他蹲马步
		 * 
		 * 这个需求可以使用if-else双分支选择结构来实现
		 */

		// 创建键盘输入对象,获取张浩的Java成绩
		Scanner sc = new Scanner(System.in);

		System.out.println("请输入张浩的Java成绩:");
		double score = sc.nextDouble();
		
		if(score>90){
			System.out.println("老师奖励iPhone6s");
		}else{
			System.out.println("老师罚他蹲马步");
		}

		System.out.println("程序执行完毕");

	}

}

多分支if选择结构(if-else-if选择结构)
     语法结构:
         if(条件1){
             代码块1;
         }else if(条件2){
             代码块2;
         }else if(条件3){
             代码块3;
         }.....
 
         }else{
             代码块n;
         }
执行规律:
        先判断条件1,如果条件1为true,则执行代码块1,执行完代码块1之后,结束这个if-else-if结构,继续往下执行if-else-if结构之后的代码
        如果条件1为false,继续往下判断条件2,如果条件2为true,执行代码块2,执行完代码块2之后,结束这个if-else-if结构,继续往下执行if-else-if结构之后的代码
        如果条件2为false,继续往下判断条件3,.......
        如果所有的条件都为false,就执行else里面的代码块n,执行完代码块n后,结束这个if-else-if结构,继续往下执行if-else-if结构后面代码
        注意事项:
        1)所有的条件不管多么简单还是多么复杂,都只能是布尔值,要么为true,要么为false
        2)else可以省略不写,如果所有的条件都不满足,也没有else,则整个if-else-if结构都不会执行
        3)if-else-if结构中的条件,如果下面的条件会引用上面条件的潜在值,条件是有顺序,严格的条件在上面.

public class Demo02 {

	public static void main(String[] args) {
		/*
		 * 需求:
		 * 	对学员的考试成绩评测
		 * 成绩>=80 :良好 
		 * 成绩>=60 :中等
		 * 成绩<60   :差
		 * 
		 * 使用多重if选择结构实现
		 * 
		 */	
		Scanner sc =new Scanner(System.in);
		System.out.println("请输入你的考试成绩:");
		double score = sc.nextDouble();
		if(score>=80){
			System.out.println("良好");
		}else if(score>=80){
			System.out.println("中等");
		}else{
			System.out.println("差");	
		}	
		System.out.println("继续努力.....");

	}

}

2.switch-case选择结构


switch(表达式){
case 常量1:
    执行语句1;
    //break;
case 常量2:
    执行语句2;
    //break;
...
default:
    执行语句n;
    //break;
}
2.说明:
① 根据switch表达式中的值,依次匹配各个case中的常量。一旦匹配成功,则进入相应case结构中,调用其执行语句。
  当调用完执行语句以后,则仍然继续向下执行其他case结构中的执行语句,直到遇到break关键字或此switch-case结构
  末尾结束为止。
② break,可以使用在switch-case结构中,表示一旦执行到此关键字,就跳出switch-case结构
③ switch结构中的表达式,只能是如下的6种数据类型之一:
   byte 、short、char、int、枚举类型(JDK5.0新增)、String类型(JDK7.0新增)
④ case 之后只能声明常量。不能声明范围。
⑤ break关键字是可选的。
⑥ default:相当于if-else结构中的else.  
  default结构是可选的,而且位置是灵活的。
3.如果switch-case结构中的多个case的执行语句相同,则可以考虑进行合并。
4.break在switch-case中是可选的

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值