Go 常量
Go 常量
如果一个变量应该有一个不能更改的固定值,则可以使用 const 关键字。
const 关键字将变量声明为“常量”,这意味着它是不可更改的并且只读的。
语法
const CONSTNAME type = value
注意:在声明常量时必须为其赋值。
声明常量
下面是在 Go 中声明常量的示例:
实例
package main
import ("fmt")
const PI = 3.14
func main() {
fmt.Println(PI)
}
常量规则
- 常量名称遵循与变量相同的命名规则
- 常量名称通常以大写字母书写(以便于识别和与变量区分)
- 常量既可以在函数内部声明,也可以在函数外部声明
常量类型
常量有两种类型:
- 有类型常量
- 无类型常量
有类型常量
有类型常量是使用已定义的类型声明的:
实例
package main
import ("fmt")
const A int = 1
func main() {
fmt.Println(A)
}
无类型常量
无类型常量是在没有类型的情况下声明的:
实例
package main
import ("fmt")
const A = 1
func main() {
fmt.Println(A)
}
注意:在这种情况下,常量的类型是根据值推断出来的(这意味着编译器会根据值来决定常量的类型)。
常量:不可更改且只读
当声明常量时,以后就不可能更改该值:
实例
package main
import ("fmt")
func main() {
const A = 1
A = 2
fmt.Println(A)
}
结果:
./prog.go:8:7: cannot assign to A
多个常量声明
为了提高可读性,可以将多个常量组合在一起成为一个块:
实例
package main
import ("fmt")
const (
A int = 1
B = 3.14
C = "Hi!"
)
func main() {
fmt.Println(A)
fmt.Println(B)
fmt.Println(C)
}