Go 常量


Go常量

如果变量应具有无法更改的固定值,则可以使用const关键字。

这个const关键字将变量声明为"constant",这意味着它是不可更改且只读

语法

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