SAP ABAP 运算符

SAP ABAP 运算符,第1张

ABAP提供了一组丰富的运算符来 *** 纵变量。 所有ABAP运算符分为四类 :

01-算数运算符

02-比较运算符

03-按位运算符

04-字符串运算符

算术运算符在数学表达式中使用的方式与在代数中使用的方式相同。 以下列表描述了算术运算符。 假设整数变量A保持20并且变量B保持40。

算数运算符的例子:

不同 *** 作数的各种类型的比较运算符

注意 - 如果变量的数据类型或长度不匹配,则执行自动转换。 在比较不同数据类型的两个值时,对一个或两个值执行自动类型调整。 转换类型由数据类型和数据类型的首选顺序决定。

以下是自动转化的顺序 :

• 如果一个字段是类型I,则另一个字段转换为类型I.

• 如果一个字段是P类型,则另一个字段转换为类型P.

• 如果一个字段是类型D,则另一个字段转换为类型D.但是C和N类型不转换,它们直接比较。 类似于类型T的情况。

• 如果一个字段是类型N,另一个是类型C或X,则两个字段都转换为类型P.

• 如果一个字段是类型C,另一个是类型X,则X类型转换为类型C.

比较运算符例1:

比较运算符例1:

ABAP还提供了一系列可以用于构建 布尔代数表达式 的逐位逻辑运算符。 位运算符可以使用括号等组合在复杂表达式中。

例如,以下是真值表,其示出了当对包含在字段A和字段B中的两个比特值应用布尔AND,OR或XOR运算符时生成的值。

说明:

1.(BIT-NOT)非门:逆转输入的高低状态。逻辑函数表示为F=A’。

2.和(BIT-AND)与门:所有输入为高时,才会有输出高。逻辑函数表示为F=A*B。

3.要么(BIT-OR)或门:所有输入为低时,才会有输出低。逻辑函数表示为F= A + B。

4.XOR(BIT-XOR)或非门:所有输入为低时,才会有输出高。逻辑函数表示为F=(A + B)’。

例子:

* * * * * * * 定义【I】.【S】两个变量,为I型,即整数形。从后面的code可以看出,【I】是代表循环多少次,【S】是代表想加的1,2,3...自然数连加后的结果。

DATA: I TYPE I,

S TYPE I.

* * * * * * *赋初值,【I】的值为1,【S】的值0。

I = 1.

S = 0.

* * * * * * *

* 【While....end while】这是一个循环。"WHILE" 顾名思义,就是当什么什么条件满足的时候,才去做什么事情。

*初值: I = 1. S = 0.

*第一次进while...endwhile里面。 S = S + I,于是S变成了1. I = I + 1. 于是, I变成了2。

这时I是《= 10的,继续做循环哦。

*第二次进while...endwhile里面。 S = S + I,于是S变成了3. I = I + 1. 于是, I变成了3。

实现了1 + 2 的功能,结果存在S里。 这时I是《= 10的,继续做循环哦。

*第三次进while...endwhile里面。 S = S + I,于是S变成了6. I = I + 1. 于是, I变成了4。

实现了1 + 2 +3的功能,结果存在S里。 这时I是《= 10的,继续做循环。

*第四次进while...endwhile里面。 S = S + I,于是S变成了10. I = I + 1. 于是, I变成了5。

实现了1 + 2 +3 +4的功能,结果存在S里。 这时I是《= 10的,继续做循环。

继续第五次,第六次。。。。

*第十次进while...endwhile里面。I = I + 1. 于是, I变成了11。这时已经不满足I《= 10了条件了,结束循环。

* * * * * * *

WHILE I <= 10.

S = S + I.

I = I + 1.

ENDWHILE.

* * * * * * *结束循环,将S结果输出在报表上。 over.

WRITE: / '1+2+3+…+10=',S.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11381097.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存