条件控制
条件语句需要开发者通过指定一个或多个条件, 并通过测试条件是否为 true 来决定是否执行指定语句, 并在条件为 false 的情况在执行另外的语句.
Z1h语言提供了以下几种条件判断语句:
语句 | 描述 |
---|---|
if 语句 | if 语句 由一个布尔表达式后紧跟一个或多个语句组成. |
if…else 语句 | if 语句 后可以使用可选的 else 语句, else 语句中的表达式在布尔表达式为 false 时执行. |
if 嵌套语句 | 你可以在 if 或 else if 语句中嵌入一个或多个 if 或 else if 语句. |
switch 语句 | switch 语句用于基于不同条件执行不同动作. |
if
一个典型的if
语句如下:
if (true) { // true改成false就不会输出了
print('haha') // TODO
}
当if
判断的值不为null
、0
、false
时, 会执行TODO代码块
里的内容
TODO代码块只有一行时, 允许省略大括号
else
在if
条件未命中时, 会往下查找(多个)else if
条件是否吻合, 如果所有的else if
都不吻合, 且有else
分支, 则执行else
分支, 这一点和大多数语言相同
if (false) {
print('haha')
} else if (true) {
print('heihei')
} else {
print('hihi')
}
建议在使用else时, 不要省略大括号
switch
一个典型的switch
语句如下:
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
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')
}