ABAP中的循环控制体系

1,无条件循环:即在执行内部语句前不需要任何逻辑判断,在ABAP中用DO实现。

            DO [n TIMES].
            <statement block>.

            ENDDO.

“Times"对循环次数施加了限制,这由“n"表示(控制循环次数,它可以是文字或变量)。 “n"的值不应为负或零。 如果它为零或为负,则不执行循环中的语句。

简单实例:输出Hello十五次。

            Report YH_SEP_15.
            Do 15 TIMES.
            Write: / 'Hello'.

            ENDDO.

2,条件循环:即在执行内部语句前需要进行真假逻辑判断,条件为真执行后面语句块,如不再为真或执行到循环终止语句,就跳出循环。

            WHILE <condition>.
            <statement block>

            ENDWHILE.

实例:

            REPORT  ZOP05.
            DATA: len TYPE i,
                       string TYPE c VALUE 'BeiJing 2018'.
            WHILE  string NE space.
                         len = sy-index.
                         SHIFT string.
            ENDWHILE.
            WRITE: / 'length of string:', len.

sy-index包含了循环已执行次数。

猜你喜欢

转载自blog.csdn.net/littlemangoyx/article/details/80107190