We're sorry but this app doesn't work properly without JavaScript enabled. Please enable it to continue.

This lesson's interactive features are locked, please to keep using them

Short Variable Declaration

Sad variable declaration:

var mySkillIssues int
mySkillIssues = 42

GOATed variable declaration:

mySkillIssues := 42

The walrus operator, :=, declares a new variable and assigns a value to it in one line. Go can infer that mySkillIssues is an int because of the 42 value. Yay type inference!

When to Use the Walrus Operator

The :=, (walrus operator) should be used instead of var style declarations basically anywhere possible. The limitation is that := can't be used outside of a function (in the global/package scope which we'll talk about later).

Type inference is based on the value being assigned.

An int:

mySkillIssues := 42

A float64:

pi := 3.14159

A string:

message := "Hello, world!"

A bool:

isGoat := true

Assignment

A common use case for Textio is to send birthday messages.