三 . 选择结构与分支结构

三 . 选择结构与分支结构

一 . 选择结构

一.选择结构
概念:根据已知条件进行逻辑判断,满足条件后执行相应操作。
1.if语法:
    if(布尔表达式){
       //代码块
    }
  1.1.执行流程:
      对布尔表达式进行判断。
      结果为true,则先执行代码块,再执行后续代码。
      结果为false,则跳过代码块,直接执行后续代码。
2.if—else语法:
    if(布尔表达式){
        //代码块1
    }else{
        //代码块2
    }
  2.1执行流程:
     对布尔表达式进行判断
     结果为true,则先执行代码块1,再退出整个结构,执行后续代码。
     结果为false,则先执行代码块2,再退出整个结构,执行后续代码。
二.多重if选择结构(区间判断)
1.1语法:
    if(布尔表达式){
        //代码块1
    }else if(布尔表达式2){
        //代码块2
    }else if(布尔表达式3){
        //代码块3
    }else{
        //代码块4
    }
1.2执行流程:
   表达式1为true,则执行代码1,再退出整个结构。
   表达式2为true,则执行代码2,再退出整个结构。
   表达式3为true,则执行代码3,再退出整个结构。
   以上均为false,则执行代码4,再退出整个结构。
   注意:相互排斥,有一个为true时,其他的均不再执行。
三.嵌套if选择结构
3.1语法:
   if(外层表达式){
        if(内层表达式){
            //内层代码块1
        }else{
            //内层代码块2
        }
   }else{
        //外层代码块
   }
3.2执行流程:
   当外层条件满足时,再判断内层条件。
   注意:一个选择结构中,可嵌套另一个选择结构,可任意组合。
package Winter.structure.selection;

import java.util.Scanner;

public class Selection01 {
    public static void main(String[] args) {
        //if语句
        double score = 98.5;
        if (score==100){     //条件
            System.out.println("if的代码块");
        }
        System.out.println("程序结束!");
        if (score==100){
            System.out.println("恭喜,满分");
        }else{
            System.out.println("抱歉,没答对");
        }
        //else if 根据预算买车
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入你的钱数:");
        int money1 = sc.nextInt();
        //long money = 100;
        if (money1>100){
            System.out.println("BMW");
        }else if (money1>50 && money1<100){
            System.out.println("A4");
        }else{
            System.out.println("bike");
        }
        //if嵌套
        //运动会百米赛跑,用时十五秒之内的进入总决赛,否则淘汰
        int timer = 0;
        char sex = '男';
        if(timer<=15){
            //进入总决赛
            if (sex=='男'){
                System.out.println("男子组决赛");
            }
            else{
                System.out.println("女子组决赛");
            }
        }else{
            System.out.println("Game over!");
        }
    }
}

二 . 分支结构

二.分支结构(等值判断)
1.1语法:
   switch(变量|表达式){
        case 值1:
            逻辑代码1;
        case 值2:
            逻辑代码2;
        case 值n:
            逻辑代码n;
        default:
            未满足时的逻辑代码;
   }
   可判断的类型:byte,short,int,char,String
1.2执行流程:
   如果变量中的值等于值1,则执行逻辑代码1。
   如果变量中的值等于值2,则执行逻辑代码2。
   如果变量中的值等于值n,则执行逻辑代码n。
   如果变量中的值没有匹配的case值时,则执行default中的逻辑代码。
1.3注意:
   当匹配的case执行后,不会自动退出整个结构,而是继续向下执行。
   break关键字可在匹配case执行后,跳出整个结构。
   内部是无序结构。
package Winter.structure.branching;

public class Branching01 {
    public static void main(String[] args){
        //分支结构案例:每日食谱
        int weekDay = 5;
        switch(weekDay){//根据weekDay找到匹配的case,并执行相应的逻辑代码。
            case 1:
                System.out.println("西红柿炒鸡蛋");
                break;
            case 2:
                System.out.println("酸辣土豆丝");
                break;
            case 3:
                System.out.println("酸豆角炒肉末");
                break;
            case 4:
                System.out.println("干锅肥牛");
                break;
            case 5:
                System.out.println("拉条子");
                break;
            case 6:
                System.out.println("冒菜");
                break;
            default:
                System.out.println("红薯");
        }
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值