本章介绍shift()函数的多种用法。
描述:
移位运算。
语法:
shift(x,s)
备注:
移位运算,s<0左移,s>0右移。支持没有小数部分的decimal。
参数:
x |
需要移位运算的表达式。 |
s |
整数。 |
选项:
@s |
右移时左边最高位补符号位,缺省补0。 |
返回值:
整数
示例:
shift(13,2) |
3 |
shift(decimal(3),-2) |
12,结果为decimal类型 |
描述:
获取移位后的源序列。
语法:
A.shift(i,s)
备注:
遍历序列A中的成员,当该成员在序列A中的序号大于等于i并且小于等于[A.len()-s]时,返回该成员后的第s个成员,否则返回该成员。A.len()为序列A的长度。当i与s之和大于A.len() 时,序列不移位。
参数:
i |
起始位置,正整数,缺省为1。 |
s |
移位量,正整数,缺省为1。 |
返回值:
序列
示例:
|
A |
|
1 |
[1,2,3,4,5,6,7,8,9,10] |
|
2 |
|
|
3 |
=to(10).new(~:id,~*~:value) |
|
4 |
=A3.shift(3,2) |
移位前:
移位后:
|