Объявление переменной var

Ключевое слово var в Go используется для объявления переменных с явным указанием их типа. В первом параметре мы передаем имя переменной, во втором параметре мы передаем тип переменной. После объявления переменная инициализируется нулевым значением своего типа.

Синтаксис

govar name type

Также можно объявить несколько переменных одного типа:

govar name1, name2 type

Или объявить переменные разных типов в одном блоке:

govar (
  name1 type1
  name2 type2
)

Объявление с инициализацией

При объявлении переменной можно сразу присвоить ей значение:

govar name type = value

При инициализации тип можно опустить, если значение имеет явный тип:

govar name = value

При инициализации нескольких переменных значения присваиваются в порядке их объявления:

govar name1, name2 type = value1, value2

Пример

Давайте объявим переменную с явным указанием типа и выведем ее значение:

gopackage main

import "fmt"

func main() {
  var age int
  fmt.Println(age)
}

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

go0

Как видим, переменная типа int по умолчанию инициализируется нулевым значением.

Пример

Объявим несколько переменных разных типов с инициализацией:

gopackage main

import "fmt"

func main() {
  var name string = "John"
  var age int = 30
  var salary float64 = 50000.50

  fmt.Println(name, age, salary)
}

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

go"John 30 50000.5"

Пример

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

gopackage main

import "fmt"

func main() {
  var (
    firstName string = "Alice"
    lastName  string = "Smith"
    age     int  = 25
    isActive  bool   = true
  )

  fmt.Println(firstName, lastName, age, isActive)
}

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

go"Alice Smith 25 true"

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

  • ключевое слово const,
    которое объявляет константы с фиксированными значениями
  • краткую форму объявления :=,
    которая позволяет объявить переменную без указания типа
  • ключевое слово type,
    которое определяет новые пользовательские типы
  • ключевое слово func,
    которое объявляет функции в Go