分支控制

顺序控制

1、程序从上到下逐行执行,中间无任何判断、跳转

2、Java 中定义变量时,采用合法的前向引用

//正确
int a = 1;
int b = a + 1;
//错误
int d = c + 1;
int c = 1;

 

分支控制 if else

1、单分支

if (条件表达式){
    代码块;
}

2、双分支

if (条件表达式) {
    代码块1;
} else {
    代码块2;
}

3、多分支

if (条件表达式1) {
    代码块1;
} else if (条件表达式2) {
    代码块2;
    ……
} else {
    代码块n;
}

4、事项

(1)多分支允许没有 else 语句

(2)多分支的所有条件表达式都不成立,若不存在 else,则没有执行入口;若存在 else,默认执行 else 代码块

(3)若代码块只有一条语句,可以省略 {},(不建议)

(4)嵌套分支不要超过三层

 

siwtch 分支结构

switch (表达式) {
    case 常量1:
        代码块1;
        break;
    case 常量2:
        代码块2;
        break;
        ……
    case 常量n:
        代码块n;
        break;
    default:
        default代码块;
        break;
}

1、表达式对应一个值,表达式的返回值必须是:byte、short、int、char、enum、String

2、case 子句中的值必须为常量,不允许为变量,匹配从常量 1 开始,常量之间是 or 关系

3、表达式的数据类型,要与常量的数据类型一致,或可以(双向)自动转换类型、可以相互比较的类型

4、代码块中若没有 break,则会穿透执行之后的代码块(包括 default 代码块),直到执行完最后一条语句或遇到 break

5、default 代码块

(1)当表达式等于常量 n,就执行代码块 n,若都不匹配,执行 default 代码块

(2)default 代码块可选,且位置可选,位置不影响匹配顺序

(3)若执行的 default 代码块没有 break,且位置不在 switch 结构的结尾,则会穿透执行之后的代码

 

switch、if

1、switch:判断具体数值较少,且符合 byte、short、int、char、enum、String

2、if:区间判断,对结果为 boolean 类型的判断

posted @   半条咸鱼  阅读(56)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
点击右上角即可分享
微信分享提示