1. 自定义类型
golang 除了基础类型,还可以在基础类型的基础上,定义一个类型别名,例如:
type FileType string
const (
FileTypeXML FileType = "xml"
FileTypeMP4 FileType = "mp4"
FileTypeMKV FileType = "mkv"
)
这里FileType 表示文件类型,利用这个类型,定义常用的几种文件类型
2. 强制类型转换
golang 语言中常见的int32 int64 这样的基础类型,是不能直接转换的,必须进行强制转换
var a int32 = 10
var b int64 = 20
b = int64(a)
语法:类型名(变量名)
3. strconv类型转换库
编码中经常需要把字符串转换成数字类型
- 转换成整型
i, err := strconv.Atoi("1314")
if err != nil {
fmt.Println(err)
}
fmt.Println(i)
num, err := strconv.ParseInt("1234", 10, 64)
if err != nil {
fmt.Println(err)
}
fmt.Println(num)
strconv.Atoi 将字符串转换成10进制整数
strconv.ParseInt 可以根据各种进制的字符串进行转换
- 转换成浮点型
f, err := strconv.ParseFloat("3.141592653", 64)
if err != nil {
fmt.Println(err)
}
fmt.Println(f)