go语言 float32 / float64
时间: 2024-11-22 14:27:35 浏览: 5
Go语言string,int,int64 ,float之间类型转换方法
Go语言支持`float32`和`float64`类型的浮点数操作。它们的区别在于精度:`float32`通常用于内存效率更高的场景,而`float64`提供更高的精度。以下是两个转换示例:
1. `float64`转`int`[^2]:
```go
// 假设我们有一个float64类型的变量f
f := 3.14159
// 使用strconv包的ParseInt将float64转换为int,可能会丢失小数部分
var i int
_, err := strconv.ParseInt(fmt.Sprintf("%d", f), 10, 64)
if err == nil {
i = int(f)
// 注意,i现在只有整数部分,即3
} else {
fmt.Println("转换失败:", err)
}
```
2. `float32`转`string`[^1]:
```go
// 假设我们有float32类型的var f32 float32 = 1.2345f
str := fmt.Sprintf("%f", f32) // 输出 "1.234500"
```
阅读全文