基本概念
ABAP 中常有 与、或、非 三种逻辑概念,分别对应 AND、 OR 、NOT 。
与:同真为真,一假则假;两个条件成立,才是真。
或:同假才假,一真即真;其中任一条件成立,则为真 。
非:非真即假,非假即真。真的变假的,假的变真的。
但是当我看到这样一个语句时,我脑子一下子没有转过来,所有写篇文章记录下。
DATA: e TYPE i .
IF 1 = 1 AND NOT ( 2 = 2 AND e IS NOT INITIAL ).
WRITE: 'ABC'.
ENDIF.
当时还想不到 AND NOT连用,后面分析下,IF语句无非就是真假的使用而已:IF的判断是真和假两种,为‘真’则是运行 IF里面的内容。
把上面的例子分解下:
IF 真 AND 非(真 AND 假 ).
ENDIF.
继续简化
IF 真 AND 非( 假 ).
ENDIF.
再变成:
IF 真 AND 真.
ENDIF.
所以最终的结果为真。注意只要把not理解为非, 就是相反的意思
就可以了。
上实际可以运行例子:
DATA: e TYPE i .
IF 1 = 1 AND NOT ( 2 = 2 AND e IS NOT INITIAL ).
WRITE: 'ABC'.
ENDIF.
IF 1 = 1.
WRITE: /'1'.
ENDIF.
IF not ( 2 = 3 ). "把not理解为非, 就是相反的意思
WRITE:/'2'.
ENDIF.
运行结果为:
好了今天分享到这,分享使我快乐,我是寒武青锋。