课程名称:GO语言语法入门篇
课程章节:第4章 Go 语言数据类型
课程讲师:Cap
课程内容:
变量的类型转换
Go 中只有显式类型转换,不存在隐式类型转换。
比如,将 int
类型的变量转为 float32
类型的:
func main() {
var a int = 1
b := float32(a)
fmt.Println(b) // 1
fmt.Println(reflect.TypeOf(b)) // float32
}
反之,将一个float32
类型的变量转为 int
类型时,小数部分会被丢弃,而造成精度损失:
func main() {
var c = 1.02
d := int©
fmt.Println(d) // 1
fmt.Println(reflect.TypeOf(d)) // int
}
类型转换只能发生在两种兼容的类型之间,如果将一个 int 类型的数字转为 bool 类型,则会报错:
常量
常量声明
Go 语言中常量使用 const
关键字进行声明:
// 显式声明:声明时带有类型
const name string = "Golang"
// 隐式声明:声明时不带类型,通常叫作无类型常量
const age = 18
常量声明时也可以使用分组声明:
const (
name string = "Golang"
age = 20
)
可以在一行中声明多个常量:
const cat, dog string = “Cat”, “Dog”
常量类型范围
常量范围目前只支持数字型(整数型、浮点型和复数)、布尔型和字符串型。
特殊常量 iota
iota 在 const 关键字出现时将被重置为 0
使用const 分组声明常量时,每新增一行常量声明, iota 会计数一次
iota 的常见用法:
-
跳值使用法
-
插队使用法
-
表达式隐式使用法
-
单行使用法
变量的可见性规则
大写字母开头的变量是公共变量,是可导出的,也就是其他包可以读取的
小写字母开头的变量是私有变量,是不可导出的。
课程收获:
这节课讲解了 Go 语言中变量的类型转换规则和方式,以及常量的声明方式,基本上和变量的声名方式一致。
共同学习,写下你的评论
评论加载中...
作者其他优质文章