MST

星途 面试题库

面试题:Go语言浮点型与其他类型的转换及注意事项

在Go语言中,如何将浮点型数据转换为整型数据?这种转换会发生什么情况?反过来,从整型转换为浮点型又有哪些需要注意的地方?请结合具体代码示例进行说明。
22.1万 热度难度
编程语言Go

知识考点

AI 面试

面试题答案

一键面试

浮点型转换为整型

在Go语言中,可以通过类型断言将浮点型数据转换为整型数据。这种转换会截断小数部分,只保留整数部分。 示例代码如下:

package main

import (
    "fmt"
)

func main() {
    var numFloat float64 = 3.14
    numInt := int(numFloat)
    fmt.Printf("浮点型 %.2f 转换为整型后: %d\n", numFloat, numInt)
}

在上述代码中,定义了一个浮点型变量 numFloat,其值为 3.14。通过 int(numFloat) 将其转换为整型,结果 numInt 的值为 3,小数部分被截断。

整型转换为浮点型

从整型转换为浮点型较为简单,直接进行类型断言即可。需要注意的是,转换后浮点型数据的小数部分为 0。 示例代码如下:

package main

import (
    "fmt"
)

func main() {
    var numInt int = 5
    numFloat := float64(numInt)
    fmt.Printf("整型 %d 转换为浮点型后: %.2f\n", numInt, numFloat)
}

在上述代码中,定义了一个整型变量 numInt,其值为 5。通过 float64(numInt) 将其转换为浮点型,结果 numFloat 的值为 5.00,自动添加了小数部分 0