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) }