Go语言math标准库

# math包

参考资料

常用函数

函数 功能 备注
NaN() float64 返回一个IEEE 754"这不是一个数字"值
IsNaN(f float64) (is bool) 报告f是否表示一个NaN(Not A Number)值
Inf(sign int) float64 如果sign>=0函数返回正无穷大,否则返回负无穷大
IsInf(f float64, sign int) bool 如果sign > 0,f是正无穷大时返回真;如果sign<0,f是负无穷大时返回真;sign==0则f是两种无穷大时都返回真。
Float32bits(f float32) uint32 返回浮点数f的IEEE 754格式二进制表示对应的4字节无符号整数
Float32frombits(b uint32) float32 数返回无符号整数b对应的IEEE 754格式二进制表示的4字节浮点数
Float64bits(f float64) uint64 返回浮点数f的IEEE 754格式二进制表示对应的8字节无符号整数
Float64frombits(b uint64) float64 返回无符号整数b对应的IEEE 754格式二进制表示的8字节浮点数
Signbit(x float64) bool 如果x是一个负数或者负零,返回真。
Copysign(x, y float64) float64 返回拥有x的量值(绝对值)和y的标志位(正负号)的浮点数。
Ceil(x float64) float64 返回不小于x的最小整数(的浮点值)
Floor(x float64) float64 返回不大于x的最大整数(的浮点值)
Trunc(x float64) float64 返回x的整数部分(的浮点值)。
Modf(f float64) (int float64, frac float64) 返回f的整数部分和小数部分,结果的正负号和都x相同
Nextafter(x, y float64) (r float64) 参数x到参数y的方向上,下一个可表示的数值
Abs(x float64) float64 返回x的绝对值
Max(x, y float64) float64 返回x和y中最大值
Min(x, y float64) float64 返回x和y中最小值
Dim(x, y float64) float64 函数返回x-y和0中的最大值
Mod(x, y float64) float64 取余运算,可以理解为 x-Trunc(x/y)*y,结果的正负号和x相同
Remainder(x, y float64) float64 IEEE 754差数求值,即x减去最接近x/y的整数值(如果有两个整数与x/y距离相同,则取其中的偶数)与y的乘积。
Sqrt(x float64) float64 返回x的二次方根
Cbrt(x float64) float64 返回x的三次方根
Hypot(p, q float64) float64 返回Sqrt(pp + qq),注意要避免不必要的溢出或下溢。
Sin(x float64) float64 正弦
Cos(x float64) float64 余弦
Tan(x float64) float64 正切
Sincos(x float64) (sin, cos float64) 返回Sin(x), Cos(x)。
Asin(x float64) float64 反正弦
Acos(x float64) float64 反余弦(x是弧度)
Atan(x float64) float64 反正切(x是弧度)。
Atan2(y, x float64) float64 类似Atan(y/x),但会根据x,y的正负号确定象限。
Sinh(x float64) float64 双曲正弦
Cosh(x float64) float64 双曲余弦
Tanh(x float64) float64 双曲正切
Asinh(x float64) float64 反双曲正弦
Acosh(x float64) float64 反双曲余弦
Atanh(x float64) float64 反双曲正切
Log(x float64) float64 求自然对数
Log1p(x float64) float64 等价于Log(1+x)。但是在x接近0时,本函数更加精确
Log2(x float64) float64 求2为底的对数
Log10(x float64) float64 求10为底的对数
Logb(x float64) float64 返回x的二进制指数值,可以理解为Trunc(Log2(x))
Ilogb(x float64) int 类似Logb,但返回值是整型
Frexp(f float64) (frac float64, exp int) 返回一个标准化小数frac和2的整型指数exp,满足f == frac * 2**exp,且0.5 <= Abs(frac) < 1
Ldexp(frac float64, exp int) float64 Frexp的反函数,返回 frac * 2**exp
Exp(x float64) float64 返回E**x
Expm1(x float64) float64 等价于Exp(x)-1,但是在x接近零时更精确;x绝对值很大时可能会溢出为-1或+Inf
Exp2(x float64) float64 返回2**x
Pow(x, y float64) float64 返回x**y
Pow10(e int) float64 返回10**e
Gamma(x float64) float64 伽玛函数(当x为正整数时,值为(x-1)!)
Lgamma(x float64) (lgamma float64, sign int) 返回Gamma(x)的自然对数和正负号
Erf(x float64) float64 误差函数
Erfc(x float64) float64 余补误差函数
J0(x float64) float64 第一类贝塞尔函数,0阶
J1(x float64) float64 第一类贝塞尔函数,1阶
Jn(n int, x float64) float64 第一类贝塞尔函数,n阶
Y0(x float64) float64 第二类贝塞尔函数,0阶
Y1(x float64) float64 第二类贝塞尔函数,1阶
Yn(n int, x float64) float64 第二类贝塞尔函数,n阶
相关推荐
联犀2 小时前
纯 Go 的 CAD 开源库 go-cad:直接解析 DWG/DXF,现在也能导出 PDF
开发语言·golang·pdf
FungLeo6 小时前
成为全栈·Go 后端篇·三轮代码审阅之后:把可读性和证据做成工程规则
golang·go·ast·静态检查·成为全栈·代码审阅
联犀9 小时前
联犀 Go SIMD 实战:视频转码从 16.5ms 到 5.46ms
开发语言·golang·音视频
紧跟先前的步伐1 天前
Go AI Agent 实战 28|Agent 的预算、超时与停止条件
开发语言·人工智能·后端·ai·golang
利威尔xu1 天前
2026-11-05-Go内存管理面试
面试·golang
Zenova EdgeOS3 天前
Go 工业边缘错误处理实战:用 errors 构建可追溯错误链
开发语言·数据库·golang
JavaPub-rodert3 天前
从零搭建通用管理后台:ShiyuAdmin 的 Go、React 与 RBAC 实践
开发语言·react.js·golang
microrain3 天前
SagooIoT 的数据接入层只有四张表,却能接住三种外部数据
物联网·golang·数据建模·sagooiot
fly-iot3 天前
【FDE知识库】(4):企业知识库怎么选型,开源知识库分享几个,选择开源协议友好的版本,开发wiki-go项目
golang·开源·开源协议
福大大架构师每日一题3 天前
excelize v2.11.1发布:Go 1.26.0起步,16项安全修复与嵌入对象能力全面升级
开发语言·安全·golang