DEV Community

Cover image for Go Basics: Variables
Abhinav Pandey
Abhinav Pandey

Posted on • Edited on

14 5 1 1

Go Basics: Variables

In the last article, I gave a small introduction to programming with Go, where we saw the tiniest possible programs and the general syntax.

Continuing on the syntax, let's take a look at some more syntax and understand how variables are declared in Go.

If you're completely new to Go, please check out the previous article:

Variables

Variables are declared using the var keyword and are used to store values.

The following is an example of a variable declaration.

var name string = "John"
Enter fullscreen mode Exit fullscreen mode

The variable name is of type string and is assigned the value John.

You can also declare multiple variables at once.

var (
    name string = "John"
    age int = 30
)
Enter fullscreen mode Exit fullscreen mode

You can also declare variables with a type but without an initial value.

var name string
Enter fullscreen mode Exit fullscreen mode

You can also declare multiple variables with a type but without an initial value.

var (
    name string
    age int
)
Enter fullscreen mode Exit fullscreen mode

Or multiple variables of the same type in a single line.

var name, occupation string
Enter fullscreen mode Exit fullscreen mode

Here, name and occupation are of type string.

Shorthand declaration of variables

You can also use the := operator to declare and assign a variable at the same time.

name := "John"
Enter fullscreen mode Exit fullscreen mode

Note that the := operator is only valid in short variable declarations. You cannot use it outside function bodies.
When using the := operator, the variable is declared with the type of the right-hand side expression. The var keyword is also not required.

Implicit type declaration
You can also declare a variable without specifying its type. In this case, the type is inferred from the initial value or a function call.
For example, the following code declares a variable age of type int and assigns the value 30 to it.

var age := 30
Enter fullscreen mode Exit fullscreen mode

Or using a function call.

var age := getAge()
Enter fullscreen mode Exit fullscreen mode

This also works for shorthand declarations.

Constants

Constants are declared using the const keyword. They are used to store values that cannot be changed.
For example, the following code declares a constant PI and assigns the value 3.14 to it.

const PI = 3.14
Enter fullscreen mode Exit fullscreen mode

Constants can also have implicit type declarations as in the above example.

  • They cannot be declared using the := operator.
  • They cannot be declared without an initial value.
  • They cannot accept a function call as an initial value.
  • The type of a constant may not be explicitly declared.

Thanks for reading.
This should give you an idea of how variables are declared in Go and how the syntax compares to other programming languages.

Stay tuned for more on Go.

If you want to connect with me, you can find me on Twitter @abh1navv.

Sentry image

Hands-on debugging session: instrument, monitor, and fix

Join Lazar for a hands-on session where you’ll build it, break it, debug it, and fix it. You’ll set up Sentry, track errors, use Session Replay and Tracing, and leverage some good ol’ AI to find and fix issues fast.

RSVP here →

Top comments (1)

Collapse
 
arxeiss profile image
Pavel Kutáč

You forgot you can do multiple assignment a, b := "Hello", 22 and sure that can be with function returning multiple values.

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay