Объявление константы const

Объявление константы const в Go используется для создания неизменяемых значений, которые не могут быть изменены после инициализации. Константы могут быть объявлены как на уровне пакета, так и внутри функции. Первым значением объявляется имя константы, вторым - её тип (который может быть опущен), третьим - начальное значение.

Синтаксис

goconst name type = value

Также можно опустить тип, и компилятор определит его автоматически:

goconst name = value

Пример

Давайте объявим константу для числа Пи и используем её в вычислениях:

gopackage main

import "fmt"

func main() {
  const pi = 3.14159
  radius := 5.0
  area := pi * radius * radius
  fmt.Println(area)
}

Результат выполнения кода:

go"78.53975"

Пример

Константы могут быть объявлены с явным указанием типа:

gopackage main

import "fmt"

func main() {
  const name string = "John"
  const age int = 30
  fmt.Println(name, age)
}

Результат выполнения кода:

go"John 30"

Пример

Можно объявлять несколько констант в одном блоке:

gopackage main

import "fmt"

func main() {
  const (
    statusOK   = 200
    statusNotFound = 404
    statusError  = 500
  )
  fmt.Println(statusOK, statusNotFound, statusError)
}

Результат выполнения кода:

go"200 404 500"

Пример

Константы в Go могут быть вычисляемыми, но только из других констант:

gopackage main

import "fmt"

func main() {
  const hoursPerDay = 24
  const daysPerWeek = 7
  const hoursPerWeek = hoursPerDay * daysPerWeek
  fmt.Println(hoursPerWeek)
}

Результат выполнения кода:

go"168"

Смотрите также

  • ключевое слово var,
    для объявления переменных
  • специальное слово iota,
    для создания последовательных констант
  • объявление типов type,
    для создания пользовательских типов
  • объявление функций func,
    для создания функций