我知道abap没有真正的布尔类型。而是使用'X'和''。到目前为止,我一直使用if语句:
IF myObj->is_sth( ) = abap_true.
ENDIF.
现在我做了类似的事情:
IF myObj->is_sth( ).
ENDIF.
我想知道这似乎有效。返回类型是布尔值。我在Netweaver 7.4上。我可以毫无问题地使用它吗?这就像我可爱的C#写作:p。
答案 0 :(得分:4)
谓词方法调用是一种只有关系表达式 操作数是一个函数方法调用meth(...)。结果 如果函数方法的结果,则关系表达式为true 如果函数方法的结果,call不是initial和false 电话是最初的。函数方法调用的结果(返回 被调用函数方法的值)可以有任何数据类型。一张支票 是基于类型友好的初始值。
与任何关系表达式一样,预测方法调用可以是a 完整的逻辑表达式或逻辑表达式的一部分。这意味着它 可以在控制语句和其他语句中指定为条件 语句,作为布尔函数或条件的参数 表达式,或与布尔运算符的连接。
这是introduced in 7.40 SP08。请注意,如果初始值为false且false为初始值,则此方法仅可靠地工作。例如,IS-H使用0
为假且1
为真的字符字段 - 但由于字符字段的初始值是空格,因此既不是真也不是假,因此,使用任何返回此值的方法将始终分支,就好像方法返回true ...