abap技术(编程里回路控制你知道几个)
abap技术(编程里回路控制你知道几个)接下来我们把第三次循环跳过去CHECK/CONTINUE,跳过当前循环,继续下一次循环一、WHILE循环,这是一种有条件的循环这条语句的条件就是INDEX小于5,如果INDEX这条语句小于5就会一直去输出那句话,结果就像上图那样;如果不指定条件,或者条件里面逻辑错误就会使程序陷入死循环,永远走不出去,直到系统崩溃。当你明白了,在实际运用的时候,根据实际情况加入一些复杂的变化,看似简单,但能发挥出巨大的作用。当然你能不能在循环中跳过某一次的循环,或者到了某一个条件就终止呢?答案是可以的。
每天学点ABAP,从入门到精通,不放弃就是胜利。#编程#
循环是任何一个程序员天天要面对的东西,任何编程语言里面都有这一概念,它的目的就是要把一些满足一定条件的数据批量处理,这些语言在编程里就叫循环语句。
循环语句允许我们多次执行一段相同的逻辑。
接触过JAVA,C语言的人都知道的循环是FOR……或者WHILE…… 等,那么ABAP开发里面循环语句是怎么写的呢?它的语法又是怎么样的呢?
一、WHILE循环,这是一种有条件的循环
这条语句的条件就是INDEX小于5,如果INDEX这条语句小于5就会一直去输出那句话,结果就像上图那样;如果不指定条件,或者条件里面逻辑错误就会使程序陷入死循环,永远走不出去,直到系统崩溃。当你明白了,在实际运用的时候,根据实际情况加入一些复杂的变化,看似简单,但能发挥出巨大的作用。
当然你能不能在循环中跳过某一次的循环,或者到了某一个条件就终止呢?答案是可以的。
CHECK/CONTINUE,跳过当前循环,继续下一次循环
接下来我们把第三次循环跳过去
从结果看出第三次循环已经跳过去了,只输出了其它4次的数据。另外还有一个功能一样的CHECK,它的写法是这样的
如果把CHECK INDEX NE 3 换成 CHECK INDEX EQ 3.会发生什么呢,可以自己试试。
EXIT,终止全部循环
从结果发现,只有两条数据,3以后数据全部丢失,因为等于三的时候,循环就已经终止了,这就是他们之间的区别。在实际应用时,根据实际情况多加变化,可以达到一些明显的效果。
二、DO循环,这是一种无条件循环
DO关键字是一种无条件的循环,他唯一需要的就是要指定TIMES,代表着你要循环几次,当你要对某一行处理时需要用系统的关键字SY-INDEX,来获取程序目前循环到了第几行。然后在对其加一些你要的逻辑,自由变化也能出其不意。
当然他们之间是可以互相嵌套的,这在很多编程语言里面几乎是互通的,编程多了你自然会去试,这就是传说中的试错。比如把上面的两个循环相结合:
这样的结果就很清晰了吧,我们自然会发现一共循环了15次,最外层的WHILE循环有五次,然后每一次对应三次DO循环,一共走了15次循环。但是为什么会输出20条语句,很简单,好好思考一下。
当然CHECK,CONTINUE,EXIT都是可以用的。
三、LOOP循环,这是针对于内表的,这涉及到了内表的创建,存数等我们到了内表部分再去细说 。
这些就是常用到的循环语句,除了这些之外还有许多复杂的循环,如果感兴趣可以多去研究,比如以下:
这就是一个比较复杂的循环了,有复杂的逻辑在里面累加,因为SAP对这些内部复杂的逻辑算法进行封装,都打包好后给了你一个关键字REDUCE,这就是触发这些复杂逻辑的开关,而你要触发这个开发就需要钥匙,而这些钥匙就是参数,要你自己提供了。就比如盗墓笔记,大门不是那么容易打开的。
由于百家号传代码会很乱,所以都是截图,代码都是完整的,照着写一遍加深理解哦!
多多练习,快速成长,赶快码起来吧!