栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

【Java】- 流程控制语句 - 分支结构

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【Java】- 流程控制语句 - 分支结构

文章目录
    • 1. if分支
    • 2. switch分支
    • 3. if、switch分支各自适合做什么业务场景?
    • 4. switch分支注意事项
    • 5.switch的穿透性

1. if分支
  • 根据判定的结果(真或假)决定执行某个分支的代码
  • 案例代码
public class IfDemo1 {
    public static void main(String[] args) {
        // 需求:心跳(60 - 100)之间是正常的,否则系统提示进一步检查
        // 格式1:if (条件表达式) { 代码... }
        int heartBeat = 30;
        if (heartBeat < 60 || heartBeat > 100) {
            System.out.println("您的心跳数据是:" + heartBeat + ",您可能需要进一步检查!");
        }
        System.out.println("检查结束");

        // 格式2:if 条件表达式) { 代码... } else { 代码... }
        // 需求:发红包
        double money = 9999;
        if (money >= 1314) {
            System.out.println("您当前发送红包成功~~~");
        } else {
            System.out.println("余额不足~~~");
        }

        // 格式3:if (条件表达式) { 代码... } else if (条件表达式) { 代码... } ... else { 代码... }
        // 绩效系统:C:0-60 B:60-80 A:80-90 A+:90-100
        int score = 99;
        if (score >= 0 && score < 60) {
            System.out.println("您本月的绩效是:C");
        } else if (score >= 60 && score < 80) {
            System.out.println("您本月的绩效是:B");
        } else if (score >= 80 && score < 90) {
            System.out.println("您本月的绩效是:A");
        } else if (score >= 90 && score <= 100) {
            System.out.println("您本月的绩效是:A+");
        } else {
            System.out.println("您输入的分数有误!");
        }
    }
}
2. switch分支
  • 匹配条件去执行分支,适合做值匹配的分支选择,结构清晰,格式良好
  • 案例代码
public class SwitchDemo2 {
    public static void main(String[] args) {
        // 目标:学会使用switch分支结构,理解流程
        String weekday = "周三";
        switch (weekday) {
            case "周一":
                System.out.println("埋头苦干,解决bug");
                break;
            case "周二":
                System.out.println("请求大牛程序员帮忙");
                break;
            case "周三":
                System.out.println("今晚啤酒、龙虾、小烧烤");
                break;
            case "周四":
                System.out.println("主动帮助女程序员解决bug");
                break;
            case "周五":
                System.out.println("今晚吃鸡");
                break;
            case "周六":
                System.out.println("与王婆介绍的小芳相亲");
                break;
            case "周日":
                System.out.println("郁郁寡欢、准备上班");
                break;
            default:
                System.out.println("数据有误!");
        }
    }
}
3. if、switch分支各自适合做什么业务场景?
  • if其实在功能上远远大于switch
  • if适合做区间匹配
  • switch适合做:值匹配的分支选择、代码优雅
4. switch分支注意事项
  • 表达式类型只能是byte、short、int、char、JDK5开始支持枚举,JDK7开始支持String、不支持double、float、long
  • case给出的值不允许重复,且只能是字面量,不能是变量
  • 不要忘记写break,否则会出现穿透现象
5.switch的穿透性
  • 如果代码执行到没有break的case块,执行完后将直接进入下一个case块执行代码(而且不会进行任何匹配),直到遇到break才跳出分支,这就是switch的穿透性
  • 当case中没有写break时才会出现switch穿透现象
  • 当存在多个case分支的功能代码是一样时,可以用穿透性把流程集中到同一处处理,这样可以简化代码
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/949082.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号