Go Basics
Go Variables and Constants: var, := and const
Two ways to declare a variable, what a zero value is, and values that never change.
What you'll learn
- var and :=
- Zero values
- const
Declaration → result
var year int0, the zero valuescore := 10int, inferredconst MaxScore = 100cannot changeDeclare, then use
Go has two ways to create a variable. var names the type, and := lets Go work out the type from the value. A variable that is declared without a value gets a zero value such as 0 or an empty string.
year is declared without a value, so it starts at 0 until 2009 is assigned. := can only be used inside a function and can declare several variables at once. A const cannot be changed after it is declared.
Key points
- var names the type; := infers it.
- A variable without a value starts at its zero value.
- A const cannot change.
Runnable Go example
main.go
package main
import "fmt"
const MaxScore = 100
func main() {
var language string = "Go"
var year int // zero value: 0
score := 10 // short declaration, type inferred
score += 5
year = 2009
name, version := "gopher", 1.21
fmt.Println(language, year, score, MaxScore)
fmt.Println(name, version)
}
Go 2009 15 100
gopher 1.21Practice
Open the example in the online compiler, change a value or add a line, and predict the output before you run it. Then break the code on purpose and read the compiler's message.
Finished this lesson?
Mark it as learned to track your progress.
Your progress is saved in this browser Sign in to keep it on every device.
Practice with a challenge
Use what this lesson covers to solve a real problem. Each challenge runs in your browser with instant tests and an AI review.
- Swap First and Last Exchange the first and last items of a list. Easy
- Running Sum Replace each value with the total so far. Easy