📌  相关文章
📜  golang 将浮点数舍入到位数 - Go 编程语言(1)

📅  最后修改于: 2023-12-03 15:01:02.290000             🧑  作者: Mango

Golang 将浮点数舍入到位数

在使用浮点数进行计算时,可能需要将其舍入到特定的位数。在 Golang 中,可以使用内置的函数实现这一操作。

math.Round 函数

math.Round 函数可将一个浮点数四舍五入到最接近的整数。此外,还可以通过指定保留多少位小数来舍入到特定的位数。

下面是一个例子,将浮点数 x 舍入到 2 位小数:

import "math"

x := 1.23456
y := math.Round(x*100) / 100

// 输出 1.23
fmt.Println(y)

如果要将浮点数舍入到更高位数,只需更改乘数和除数即可。例如,下面将浮点数舍入到 4 位小数:

x := 1.23456
y := math.Round(x*10000) / 10000

// 输出 1.2346
fmt.Println(y)
strconv.FormatFloat 函数

strconv.FormatFloat 函数可将一个浮点数格式化为字符串。通过指定格式,可以将其舍入到特定的位数。

下面是一个例子,将浮点数 x 格式化为 2 位小数的字符串:

import "strconv"

x := 1.23456
y := strconv.FormatFloat(x, 'f', 2, 64)

// 输出 "1.23"
fmt.Println(y)

如果要将浮点数格式化为更多或更少的小数位数,只需更改第三个参数即可。例如,下面将浮点数格式化为 4 位小数的字符串:

x := 1.23456
y := strconv.FormatFloat(x, 'f', 4, 64)

// 输出 "1.2346"
fmt.Println(y)
总结

在 Golang 中,可以使用 math.Roundstrconv.FormatFloat 函数将浮点数舍入到特定的位数。根据实际使用情况,选择合适的函数即可。