if else 与 switch case

来源:互联网 发布:交大知行大厦8层 编辑:程序博客网 时间:2024/05/08 14:12

1. 分支(分治?)

  • if else 表达的是二分支;if else if else 表达的是三分支;
  • switch case 表达的则是多分秩。

1.2 有无漏网之鱼

if (A){    B;}Z;

不经过 A 也是可以到达 Z 的,也即 if 中的 A 判断未通过。

if (A){    B;} else {    C;}Z;

想要执行 Z,必须经过 B、C 中的其中一个。if 与 else 为对立事件,对立事件的概率之和为1.

if (A){    B;}else if (C){     D; }Z;

想要执行 Z,却不必执行 B 和 D 中的任何一个,也即 A 和 C 的断言均未通过。

1.3 if/else if 与 设置布尔变量

bool ok = true;if (A) {    ok = false;} else if (B){    ok = false;}return ok;

对于 if / else if 二分支而言,并未包含全部的集合空间,在 if 、else if 之外,还其他的取值情况,在这些情况下,并不改变布尔变量ok的取值,当然只有在 A 内的逻辑判断全不成立时(比如逻辑表达式通过 || 连接),才会去判断 B;

其实等价于:

bool ok = true;if (A || B)    ok =false;return ok;
0 0
原创粉丝点击