数据类型转换
package main
import "fmt"
func main() {
//同底层数据类型之间的转换
// 定义数字类型变量
var num int = 8
var num1 int8
var num2 int16
var num3 int32
var num4 float32
// 转换
num1 = int8(num)
num2 = int16(num)
num3 = int32(num)
num4 = float32(num)
fmt.Printf("num1 类型: %T, num1=%v n",num1,num1)
fmt.Printf("num2 类型: %T, num2=%v n",num2,num2)
fmt.Printf("num3 类型: %T, num3=%v n",num3,num3)
fmt.Printf("num4 类型: %T, num4=%v n",num4,num4)
fmt.Printf("num 类型: %T, num=%v n",num,num)
}
注意: 1) 类型转换只是将某个变量的值转换成其他类型,而被转换的变量没有影响
2) 高精度int类型转低精度int类型,如果超出低精度范围则会做溢出处理,程序不会报错
package main
import (
"fmt"
"strconv"
)
func main() {
//不同底层数据类型之间的转换 int int8 转 string
// 定义数字类型变量
var num int = 8
var num2 int16 = 10
var num3 float32 = 12.12
var bool1 bool = true
// 转换
//注意参数: 第一个参数 必须是int64类型, 第二个参数 2-36 表示数值的进制
str1 := strconv.FormatInt(int64(num),10)
fmt.Printf("str type: %T, str=%v n",str1,str1)
str2 := strconv.FormatInt(int64(num2),10)
fmt.Printf("str type: %T, str=%v n",str2,str2)
// 参数1:只能是float64 ,参数2:格式 ,参数3:保留小数位数, 参数4:所转类型位数
str3 := strconv.FormatFloat(float64(num3),'f',2,32)
fmt.Printf("str type: %T, str=%v n",str3,str3)
str4 := strconv.FormatBool(bool1)
fmt.Printf("str type: %T, str=%v n",str4,str4)
}
package main
import (
"fmt"
"strconv"
)
func main() {
//不同底层数据类型之间的转换 string转 int int8
// 定义变量
var str1 string = "8"
var str2 string = "12.12"
var str3 string = "true"
// 转换
// 返回的int64, 可以根据需要再进行同底层转换
num1,_ := strconv.ParseInt(str1,10,64)
fmt.Printf("num1 类型:%T , num1=%v n",num1,num1)
num2,_ := strconv.ParseFloat(str2,64)
fmt.Printf("num2 类型:%T , num2=%v n",num2,num2)
bool1,_ := strconv.ParseBool(str3)
fmt.Printf("bool1 类型:%T , bool1=%v n",bool1,bool1)
}
package main
import (
"fmt"
"strconv"
)
func main() {
//int 转 string
var i int = 12122
str := strconv.Itoa(i)
fmt.Printf("str 类型:%T , str=%v n",str,str)
//string 转 int
var str1 string = "1123"
intData,_ := strconv.Atoi(str1)
fmt.Printf("intData 类型:%T , intData=%v n",intData,intData)
}
原文地址:https://blog.csdn.net/leo_jk/article/details/128537433
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_50399.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。