原文发布时间:2015-06-03 08:53:09
翻译:小张张(帮助文档中关于数学运算符部分的翻译)
下列的操作符列表按照其优先级进行排序。如果操作数为null、missing或是空字符串,或者表达式无效,表达式会返回null,附加 fme_expression_warnings属性列表。如果结果值能够无损的转换为整型值,则转换进行。否则,结果值为双精度。
注意当使用数学运算符时,如果遇到null,则返回null。要处理null属性,使用数学函数替换操作符。例如,如果属性nullAttr的值为null,1+@value(nullAttr)会返回null,但是@add(1,@value(nullAttr))会返回1。
操作符 | 描述 |
- + ~ ! | 一元减法、一元加法、按位取反、逻辑非。 这些操作符不能被用于字符串操作,按位取反只能用于整型。 |
** | 乘方 仅对数值操作有效。 |
* / % | 乘、除、取余 所有包含 / 操作符得到的结果为浮点型值。例如1/2=0.5。 表达式1/0的值为无穷 % 操作符只能被用于整数。余数与除数(分母)有相同符号,且绝对值小于除数。 |
+ - | 加和减 |
<< >> | 左移和右移 只对整型操作有效 |
< > <= >= | 布尔型操作符:小于、大于、小于或等于、大于或等于 如果条件为真,则结果为1,若条件为假,则结果为0。这些操作符在使用字符串进行比较的情况下可以用于字符串操作。 |
== != | 布尔型操作符:等于或不等于 若条件为真,则结果为1,若条件为假,则结果为0。 |
& | 按位与 只对整型操作有效。 |
^ | 按位异或 只对整型操作有效。 |
| | 按位或 只对整型操作有效。 |
&& | 逻辑与 如果条件为真,则结果为1,如果条件为假,则结果为0。 |
|| | 逻辑或 若条件为真,则结果为1,若条件为假,则结果为0。 |
? : (x?y:z) | If-then-else,例如:ture?1:0 如果x非0,那么结果为y的值,如果x为0,那么结果为z的值。 |
若对文章有疑问,可发送邮件至zhangyq@antu.com.cn讨论或提问。