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)
}
亲自试一试 »


Untyped Constants

Untyped constants are declared without a type:

实例

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)
}
亲自试一试 »