SAP ABAP - If...Else 语句
-
简述
对于 IF….ELSE 语句,如果表达式的计算结果为 true,则将执行 IF 代码块。否则,ELSE 代码块将被执行。以下语法用于 IF….ELSE 语句。IF<condition_1>. <statement block 1>. ELSE. <statement block 2>. ENDIF.
-
流程图
-
例子
Report YH_SEP_15. Data Title_1(20) TYPE C. Title_1 = 'Tutorials'. IF Title_1 = 'Tutorial'. write 'This is IF Statement'. ELSE. write 'This is ELSE Statement'. ENDIF.
上面的代码产生以下输出 -This is ELSE Statement.
-
IF….ELSEIF….ELSE 语句
有时,IF 语句的嵌套会使代码难以理解。在这种情况下,可以使用 ELSEIF 语句来避免 IF 语句的嵌套。使用 IF、ELSEIF 和 ELSE 语句时,需要考虑以下几点 --
IF 语句可以有零个或一个 ELSE 语句,并且它必须位于任何 ELSEIF 语句之后。
-
IF 语句可以有零到多个 ELSEIF 语句,并且它们必须位于 ELSE 语句之前。
-
如果 ELSEIF 语句成功,则不会测试其余的 ELSEIF 语句或 ELSE 语句。
以下语法用于 IF...ELSEIF...ELSE 语句。IF<condition_1>. <statement block 1>. ELSEIF<condition_2>. <statement block 2>. ELSEIF<condition_3>. <statement block 3>. ...... ...... ...... ...... ELSE. <statement block>. ENDIF.
在上述语法中,处理块的执行基于与处理块相关联的一个或多个逻辑条件的结果。这里 --
IF 语句的条件_1 表示评估 true 或 false 条件的逻辑条件。
-
condition_2 显示 ELSEIF 语句中指定的第二个条件,当 IF 语句条件为 false 时执行该条件。
-
ENDIF 表示 IF 语句块的结束。
例子
Report YH_SEP_15. Data Result TYPE I VALUE 65. IF Result < 0. Write / 'Result is less than zero'. ELSEIF Result < 70. Write / 'Result is less than seventy'. ELSE. Write / 'Result is greater than seventy'. ENDIF.
上面的代码产生以下输出 -Result is less than seventy.
-