信息发布→ 登录 注册 退出

XPath的floor(), ceiling(), round()函数怎么用

发布时间:2026-01-08

点击量:
XPath的floor()、ceiling()、round()均为数值取整函数:floor()向下取整(如floor(-2.1)→-3),ceiling()向上取整(如ceiling(-1.9)→-1),round()四舍五入且0.5恒进一(如round(-2.5)→-2)。

XPath 的 floor()ceiling()round() 都是数值取整函数,用于对浮点数做不同方式的舍入处理,只能作用于数字(或能转为数字的值),返回整数。

floor():向下取整

把数值向负无穷方向取整,即“舍去小数部分”,不看小数大小,直接取不大于该数的最大整数。

  • floor(3.9) → 3
  • floor(3.0) → 3
  • floor(-2.1) → -3(注意:-3 比 -2.1 更小,所以是向下)
  • floor("4.7") → 4(字符串会自动转为数字)

ceiling():向上取整

把数值向正无穷方向取整,即“进一取整”,取不小于该数的最小整数。

  • ceiling(3.1) → 4
  • ceiling(5.0) → 5
  • ceiling(-1.9) → -1(-1 大于 -1.9,是最小的不小于它的整数)
  • ceiling("2.0001") → 3

round():四舍五入到最接近的整数

按数学常规四舍五入;当小数部分正好是 0.5 时,XPath 1.0 规定**向正无穷方向舍入**(即 0.5 总是进一)。

  • round(2.4) → 2
  • round(2.5) → 3(不是“偶数规则”,而是无条件进一)
  • round(-2.5) → -2(因为 -2 > -2.5,且是离 -2.5 更近、且“向正无穷”的整数)
  • round(0.5) → 1round(-0.5) → 0

这些函数常用于 XPath 表达式中处理计算结果,比如:floor(@price div 10) 得到价格按 10 元分档的下限档位。注意它们不能直接处理节点集——需先用 number() 或算术运算转为数值。

基本上就这些,不复杂但容易忽略负数行为和 round(0.5) 的特殊规则。

标签:# 字符串  # number  # 四舍五入  # 都是  # 均为  # 不看  # 不小于  # 先用  # 更小  # 更近  # 作用于  # 舍去  
在线客服
服务热线

服务热线

4008888355

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!