数字孪生节点的孪生规则中支持多种运算符和函数,您可在编辑孪生规则时使用运算符和函数,实现数据处理的多样化。
运算符
运算符优先级依次递减顺序为:( )、[ ] 、.、**、!~、*、/、%、+、-、<<、>>、>>>、<、<=、>、>=、==、!=、&、^、|、&&、||。
数学函数
以下函数表达式中的入参n、n1和n2是数值型参数,且必填。函数返回值均为Double类型。
| 函数表达式 | 说明 |
|---|---|
| abs(n) | 返回n的绝对值。 |
| acos(n) | 返回n的反余弦值。 |
| asin(n) | 返回n的反正弦值。 |
| atan(n) | 返回n的反正切值。 |
| ceil(n) | 返回n最接近的整数。 |
| cos(n) | 返回n的余弦值。 |
| cosh(n) | 返回n的双曲余弦值。 |
| cot(n) | 返回n的余切值。 |
| exp(n) | 返回e的n次幂。 |
| cbrt(n) | 返回n的立方根。 |
| expm1(n) | 返回exp(n)-1的值。
n值较小时,使用此函数计算的结果比 |
| floor(n) | 返回小于n的最近整数。 |
| log(n) | 返回log以e为底n的对数。 |
| log1p(n) | 返回log(1+n)的值。
n值较小时,使用此函数计算的结果比 |
| log2(n) | 返回log以2为底n的对数。 |
| log10(n) | 返回log以10为底n的对数。 |
| pow(n1, n2) | 返回n1的n2次幂。 |
| rand() | 返回[0, 1)之间的随机数。 |
| signum(n) | 返回n的符号。返回结果如下:
|
| sin(n) | 返回n的正弦值。 |
| sinh(n) | 返回n的双曲正弦值。 |
| sqrt(n) | 返回n的平方根。 |
| tan(n) | 返回n的正切值。 |
| tanh(n) | 返回n的双曲正切值。 |
条件函数
| 函数表达式 | 说明 |
|---|---|
| condition(expression, resultIfTrue, resultIfFalse) | 根据expression的计算结果,判断返回值。
expression为Boolean类型值,或计算结果为Boolean类型的表达式。
如果返回的resultIfTrue或resultIfFalse值为none,则表示不进行任何处理。 返回结果类型,取决于resultIfTrue或resultIfFalse的返回类型。 |
| value(param, defaultValue) | 如果param的值为空,则函数的返回结果为defaultValue,否则返回param。
param为基本数据类型,可为空,defaultValue为基本数据类型,不可为空。 返回结果类型,取决于defaultValue的返回类型。 |
字符函数
| 函数表达式 | 说明 |
|---|---|
| contains(str1, str2) | 判断字符串str1中是否包含字符串str2。
返回结果类型为Boolean。 |
| endWith(str1, str2) | 判断字符串str1中是否以字符串str2结尾。
返回结果类型为Boolean。 |
| length(str) | 返回字符串str的长度。
返回结果类型为Double。 |
| startWith(str1, str2) | 判断字符串str1中是否以字符串str2开头。
返回结果类型为Boolean。 |
| substring(str, start, end) | 返回字符串str从start(包括)到end(不包括)的子字符串。
|
| join(param1, param2) | 将param1和param2转换成字符串,并进行拼接。
param1和param2数据类型为数值型或字符串型。 返回结果类型为String。 |