NitWikit/docs/扩展阅读/kether/数学运算.md
2024-05-18 05:40:48 +08:00

1.4 KiB
Raw Blame History

sidebar_position
2

数学运算

Math

https://www.yuque.com/sacredcraft/kether/action-math

/* 加法运算:等价于 1+2+3 = 6 */
math add [ 1 2 3 ]
math + [ 1 2 3 ]


/* 减法运算:等价于 9-5-1 = 3 */
math sub [ 9 5 1 ]
math - [ 9 5 1 ]


/* 乘法运算:等价于 3x2x5 = 30 */
math mul [ 3 2 5 ]
math * [ 3 2 5 ]


/* 除法运算:等价于 6÷2 = 3 */
math div [ 6 2 ]
math / [ 6 2 ]

除了上面几种用法Math 还有一种比较舒服的写法

/* 计算 1 + 3 x 6 ÷ 3 - 2 */
math 1 + 3 * 5 / 6 - 2

calc

https://github.com/TabooLib/taboolib/blob/master/module/module-kether/src/main/kotlin/taboolib/module/kether/action/transform/ActionJexl3.kt

  • 加法a + b

  • 减法a - b

  • 乘法a * b

  • 除法a / b

  • 幂运算(我测试不能使用):

幂运算使用 ** 符号。例如,计算 2 的 3 次方2 ** 3。

  • 开方(我测试不能使用):

JEX 支持开方操作。例如,计算 9 的平方根sqrt(9)。

  • 取整(我测试不能使用):
取整操作可以使用 floor()、ceil() 或 round() 函数。
    floor(x):向下取整,返回不大于 x 的最大整数。
    ceil(x):向上取整,返回不小于 x 的最小整数。
    round(x):四舍五入,返回最接近 x 的整数。
  • 取余:

取余操作使用 % 符号。例如,计算 10 除以 3 的余数10 % 3。

当然也可以使用括号