Treci la conținutul principal

Variabile în Go

O variabilă este un loc cu nume din programul tău, în care este păstrată o valoare, ca să o poți folosi din nou mai târziu.


Tipuri de variabile în Go

Tipul unei variabile stabilește ce fel de date poate conține. Go are mai multe tipuri, printre care acestea:

  • int - numere întregi, cum ar fi 123 sau -123
  • float32 - numere în virgulă mobilă, care au zecimale, cum ar fi 19.99 sau -19.99
  • string - text, cum ar fi „Hello World”, scris între ghilimele duble
  • bool - una dintre două stări, true sau false

Declararea (crearea) variabilelor

Go îți oferă două moduri de a declara o variabilă. Sintaxa fiecăruia este prezentată mai jos.

1. Cuvântul cheie var:

Scrie var, apoi numele variabilei și tipul ei.

Notă: Poți omite type sau value, dar niciodată pe amândouă.

2. Semnul :=:

Scrie numele variabilei, apoi :=, apoi valoarea.

Notă: În această formă, tipul este dedus: compilatorul îl stabilește pe baza valorii pe care o dai.

Notă: Deoarece compilatorul are nevoie de acea valoare, := nu poate fi folosit pentru a declara o variabilă fără a-i atribui o valoare.

Sintaxa cu var

main.go
var variablename type = value

Sintaxa prescurtată

main.go
variablename := value

Declararea variabilelor cu valoare inițială

Când știi deja ce ar trebui să conțină o variabilă, poți face declararea și atribuirea pe o singură linie, așa cum arată exemplul de mai jos.

Notă: Nici student2, nici x nu au un tip scris în cod, așa că tipurile lor sunt deduse din valorile lor.

Exemplu

Prompt
Declară variabile folosind var cu tip, var cu tip dedus și forma prescurtată :=. Afișează-le pe toate trei.
Ieșire: Program Go și ieșirea capturată

Declararea variabilelor fără valoare inițială

Go nu lasă niciodată o variabilă neinițializată. Dacă declari una fără să îi dai o valoare, ea primește automat valoarea implicită a tipului său:

Exemplu

Programul de mai jos declară trei variabile, a, b și c, și nu dă niciuneia o valoare. Când îl rulezi, vezi că fiecare conține deja valoarea implicită a tipului său: a este "", b este 0, iar c este false.

Prompt
Declară variabile de tip string, int și bool fără valori și afișează valorile lor implicite.
Ieșire: Program Go și ieșirea capturată

Atribuirea valorii după declarare

Nu trebuie să îi dai unei variabile valoarea imediat. Poți să o declari mai întâi și să îi atribui valoarea mai târziu, ceea ce este util când nu cunoști încă valoarea.

Notă: Acest lucru funcționează doar cu var. Folosirea „:=” cere întotdeauna o valoare ca parte a declarației.

Exemplu

Prompt
Declară o variabilă de tip string, atribuie-i o valoare după declarare și afișeaz-o.
Ieșire: Program Go și ieșirea capturată

Diferența dintre var și :=

var și := diferă în câteva mici privințe:

Poți folosi var atât în interiorul, cât și în afara funcțiilor și poți să declari variabila și să îi atribui valoarea în pași separați.

:= funcționează doar în interiorul funcțiilor, iar declararea și atribuirea nu pot fi separate: trebuie să aibă loc pe aceeași linie.

Exemplu

Aici, var declară variabile în afara oricărei funcții, ceea ce funcționează fără probleme:

Prompt
Declară variabile în afara unei funcții cu var și afișează-le în interiorul funcției main.
Ieșire: Program Go și ieșirea capturată

Exemplu

Acest program încearcă să folosească := în afara unei funcții, așa că eșuează cu o eroare în loc să ruleze.

Prompt
Arată eroarea care apare la folosirea := în afara unei funcții în Go.
Ieșire: Program Go și ieșirea capturată