数学工具 - MathUtil / BitStatusUtil

由来

提供精确的数学运算和位状态管理。

MathUtil

from hutool import MathUtil

# 精确加法(使用 Decimal)
MathUtil.add(0.1, 0.2)  # Decimal('0.3')

# 角度与弧度转换
MathUtil.point_to_radians((1, 1))      # 弧度值
MathUtil.radians_to_point(3.14159)     # (x, y) 坐标

# 排列数 A(n, m)
MathUtil.arrangement_count(5, 3)   # 60

# 组合数 C(n, m)
MathUtil.combination_count(5, 3)   # 10

# 元/分转换
MathUtil.yuan_to_cent(1.23)        # 123
MathUtil.cent_to_yuan(123)         # 1.23

BitStatusUtil

位状态管理,常用于权限管理等场景:

from hutool import BitStatusUtil

# 添加状态
status = 0
status = BitStatusUtil.add(status, 1, 2)    # 添加状态 1 和 2

# 判断状态
BitStatusUtil.has(status, 1)    # True
BitStatusUtil.has(status, 4)    # False

# 移除状态
status = BitStatusUtil.remove(status, 1)

# 转为二进制字符串
BitStatusUtil.to_binary_string(status)  # "10"