控制流语句¶
控制流语句用于控制过程中的语句执行顺序。
支持的控制流语句包括:
WHILE:根据指定的条件循环执行一组语句,直到条件不再满足。IF:根据指定的条件执行一组语句。BREAK:立即退出循环,通常在 WHILE 语句或循环内的 IF 语句中使用。CONTINUE:跳过当前迭代中剩余的语句,继续下一次迭代。通常在 WHILE 语句或循环内的 IF 语句中使用。
语法¶
- while_statement
- if_statement
- break_statement
- continue_statement
while_statement ::=
'WHILE' value_expression 'THEN' '{' procedure_body '}'
if_statement ::=
'IF' value_expression 'THEN' '{' procedure_body '}'
( 'ELSEIF' value_expression 'THEN' '{' procedure_body '}' )*
( 'ELSE' '{' procedure_body '}' )?
break_statement ::=
'BREAK'
continue_statement ::=
'CONTINUE'
参数¶
value_expression¶
计算结果为布尔值的值表达式。更多信息,请参见布尔类型和值表达式。
procedure_body¶
待执行的一组语句。更多信息,请参见过程体。
示例¶
WHILE¶
'''
VALUE i INT = 0
WHILE i < 5 THEN {
SET i = i + 1
}
RETURN i
'''
返回:
+---+
| i |
+---+
| 5 |
+---+
IF¶
IF-ELSE¶
'''
VALUE i INT = 5
IF i < 5 THEN {
SET i = i + 1
} ELSE {
SET i = i - 1
}
RETURN i
'''
返回:
+---+
| i |
+---+
| 4 |
+---+
IF-ELSEIF-ELSE¶
'''
VALUE i INT = 4
IF i < 3 THEN {
SET i = i + 1
} ELSEIF i < 5 THEN {
SET i = i + 2
} ELSE {
SET i = i - 1
}
RETURN i
'''
返回:
+---+
| i |
+---+
| 6 |
+---+
BREAK¶
'''
VALUE i INT = 0
WHILE i < 5 THEN {
IF i = 3 THEN {
BREAK
}
SET i = i + 1
}
RETURN i
'''
返回:
+---+
| i |
+---+
| 3 |
+---+
CONTINUE¶
'''
VALUE i INT = 0
WHILE i < 5 THEN {
IF i < 3 THEN {
SET i = i + 1
CONTINUE
} ELSE {
SET i = i + 1
}
}
RETURN i
'''
返回:
+---+
| i |
+---+
| 5 |
+---+