条件控制

条件语句需要开发者通过指定一个或多个条件, 并通过测试条件是否为 true 来决定是否执行指定语句, 并在条件为 false 的情况在执行另外的语句. Z1h语言提供了以下几种条件判断语句: |语句|描述| |:-:|:-:| if 语句|if 语句 由一个布尔表达式后紧跟一个或多个语句组成. if…else 语句|if 语句 后可以使用可选的 else 语句, else 语句中的表达式在布尔表达式为 false 时执行. if 嵌套语句|你可以在 if 或 else if 语句中嵌入一个或多个 if 或 else if 语句. switch 语句|switch 语句用于基于不同条件执行不同动作.

if

一个典型的if语句如下: z1h if (true) { // true改成false就不会输出了 print('haha') // TODO } if判断的值不为null0false时, 会执行TODO代码块里的内容 TODO代码块只有一行时, 允许省略大括号

else

if条件未命中时, 会往下查找(多个)else if条件是否吻合, 如果所有的else if都不吻合, 且有else分支, 则执行else分支, 这一点和大多数语言相同 z1h if (false) { print('haha') } else if (true) { print('heihei') } else { print('hihi') } 建议在使用else时, 不要省略大括号

switch

一个典型的switch语句如下: z1h a = 3 switch (a) { case 1: print('One') case 2: print('Two') case 3: print('Three') default: print('Unknown') } 依次判断switch的值是否与case相符, 相符则执行对应代码块, 否则执行default代码块(如果有的话)

fallthrough

switch语句中, 如果执行了吻合条件的代码块后, 不需要马上返回, 而是希望执行下一个case(或default), 可以使用fallthrough z1h a = 2 switch (a) { case 1: print('One') case 2: print('Two') fallthrough // 匹配case 2时, 也会执行case 3的代码块 case 3: print('Three') // fallthrough // 删掉本行注释的话会继续执行default的代码块 default: print('Unknown') }