Cum să folosiți operatorii în Golang

Operatorii sunt baza oricărui limbaj de programare. Prin urmare, funcționalitatea limbajului Golang este incompletă fără utilizarea operatorilor. Operatorii ne permit să efectuăm diferite tipuri de operații pe operanzi. În limbajul Go, operatorii pot fi clasificați în funcție de diferitele lor funcții .

Cum să folosiți operatorii în Golang

Operatori aritmetici

Acești operatori sunt utilizați pentru a efectua operații pe operanzi în limbajul Go:

  • Adăugare: „+” adaugă doi operanzi. De exemplu: x+y.
  • Scădere: „-” scade doi operanzi. Exemplu: xy.
  • Înmulțire: „*” înmulțește doi operanzi. De exemplu: x*y.
  • Diviziune: '/' împarte primul operand la al doilea operand. De exemplu: x/y.
  • Rest: operatorul „%” returnează restul atunci când primul operand este împărțit la al doilea operand. De exemplu: x%y.

 Notă: -, +, !, &, *, <- și ^ se mai numesc și operatori unari, iar precedența operatorilor unari este mai mare. Operatorii ++ și — provin din declarații, nu sunt expresii, deci se află în afara ierarhiei operatorilor.

De exemplu:

//Minh họa chương trình Go dùng toán tử số học
package main 

import "fmt"

func main() { 
p:= 34
q:= 20
	
// Phép cộng
result1:= p + q 
fmt.Printf("Result of p + q = %d", result1) 
	
// Phép trừ
result2:= p - q 
fmt.Printf("\nResult of p - q = %d", result2) 
	
// Phép nhân
result3:= p * q 
fmt.Printf("\nResult of p * q = %d", result3) 
	
// Division 
result4:= p / q 
fmt.Printf("\nResult of p / q = %d", result4) 
	
// Modulus 
result5:= p % q 
fmt.Printf("\nResult of p %% q = %d", result5) 
} 

Rezultat:

Kết quả của p + q = 54
Kết quả của p - q = 14
Kết quả của p * q = 680
Kết quả của p / q = 1
Kết quả của p % q = 14

Operatori Relaționali

Operatorii relaționali sunt utilizați pentru a compara două valori. Să ne uităm la fiecare operator unul câte unul:

  • Operatorul '=='(Egal) verifică dacă cei doi operanzi dați sunt egali sau nu. Dacă este egal, returnează adevărat. În caz contrar, returnează false. De exemplu, 5==5 va returna adevărat.
  • Operatorul '!='(Nu este egal cu) verifică dacă cei doi operanzi dați sunt egali sau nu. În caz contrar, se întoarce adevărat. În caz contrar, returnează false. Acesta este complementul boolean exact al operatorului „==”. De exemplu, 5!=5 va returna false.
  • Operatorul „>” (Mai mare decât) verifică dacă primul operand este mai mare decât al doilea operand. Dacă este mai mare, se întoarce adevărat. Dacă este mai mică, se întoarce false. De exemplu, 6>5 va returna adevărat.
  • Operatorul „<”(mai mic decât) verifică dacă primul operand este mai mic decât al doilea operand. Dacă este mai puțin, se întoarce adevărat. Dacă nu, se întoarce false. De exemplu, <5 va reveni
  • Operatorul '>='(Mai mare decât egal) verifică dacă primul operand este mai mare sau egal cu al doilea operand. Dacă este mai mare sau egal, returnează adevărat. Dacă este mai mic sau egal, returnează false. De exemplu: 5>=5 va returna true.
  • Operatorul „<=”(mai mic sau egal cu) verifică dacă primul operand este mai mic sau egal cu al doilea operand. Dacă este mai mare sau egală, returnează adevărat. Dacă este mai mică sau egală, returnează false. De exemplu: <=5 va reveni și el

De exemplu:

// Minh họa chương trình Go dùng toán tử quan hệ
package main 

import "fmt"

func main() { 
p:= 34
q:= 20
	
// ‘=='(Equal To) 
result1:= p == q 
fmt.Println(result1) 
	
// ‘!='(Not Equal To) 
result2:= p != q 
fmt.Println(result2) 
	
// ‘<‘(less than)="" result3:="p">< q="" fmt.println(result3)="" ‘="">'(Greater Than) 
result4:= p > q 
fmt.Println(result4) 
	
// ‘>='(Greater Than Equal To) 
result5:= p >= q 
fmt.Println(result5) 
	
// ‘<='(less than="" equal="" to)="" result6:="p"><= q="" fmt.println(result6)="" }="">

Rezultat:

false
true
false
true
true
false

Operatori logici

Ele sunt utilizate pentru a combina două sau mai multe condiții/constrângeri sau pentru a completa evaluarea condiției inițiale luate în considerare.

  • ȘI: Operatorul „&&” returnează adevărat atunci când ambele condiții luate în considerare sunt îndeplinite. În caz contrar, returnează false. De exemplu, a && b returnează adevărat atunci când ambele a și b sunt adevărate (adică diferite de zero).
  • SAU: Operatorul „||” Returnează adevărat atunci când una (sau ambele) dintre condițiile luate în considerare sunt îndeplinite. În caz contrar, returnează false. De exemplu: a || b returnează adevărat dacă a sau b este adevărat (adică diferit de zero). Desigur, returnează adevărat atunci când ambele a și b sunt adevărate.
  • NU logic: „!” operator Returnează adevărat atunci când condiția luată în considerare nu este îndeplinită. În caz contrar, returnează false. De exemplu: !a returnează adevărat dacă a este fals, adică atunci când a = 0.

De exemplu:

// Minh họa chương trình Go dùng toán tử logic
package main 
import "fmt"
func main() { 
	var p int = 23
	var q int = 60
		
	if(p!=q && p<=q){ fmt.println("true")="" }="" if(p!="q" ||=""><=q){ fmt.println("true")="" }="" if(!(p="=q)){" fmt.println("true")="" }="" }="">

Rezultat:

True
True
True

Operatori pe biți

În limbajul Go, există 6 operatori bit cu bit care operează la nivel de biți sau sunt utilizați pentru a efectua operații bit cu bit. Următorii sunt operatorii pe biți:

  • & (ȘI pe biți): ia două numere ca operanzi și efectuează AND pe fiecare bit din cele două numere. Rezultatul AND este doar 1 dacă ambii biți sunt 1.
  • | (SAU pe biți): ia două numere ca operanzi și efectuează OR pe fiecare bit din cele două numere. Rezultatul OR este 1 dacă oricare dintre cei doi biți este 1.
  • ^ (XOR pe biți): ia două numere ca operanzi și efectuează XOR pe fiecare bit din cele două numere. Rezultatul XOR este 1 dacă cei doi biți sunt diferiți.
  • < (deplasare la stânga): ia două numere, deplasează biții primului operand la stânga, al doilea operand determină numărul de poziții de deplasat
  • >> (deplasare la dreapta): Luați două numere, mutați biții primului operand la dreapta, al doilea operand determină numărul de poziții de mutat.
  • &^ (ȘI NU): Acesta este un operator explicit pe biți.

De exemplu:

// Minh họa chương trình Go dùng toán tử bitwise
package main 

import "fmt"

func main() { 
p:= 34
q:= 20
	
// & (bitwise AND) 
result1:= p & q 
fmt.Printf("Result of p & q = %d", result1) 
	
// | (bitwise OR) 
result2:= p | q 
fmt.Printf("\nResult of p | q = %d", result2) 
	
// ^ (bitwise XOR) 
result3:= p ^ q 
fmt.Printf("\nResult of p ^ q = %d", result3) 
	
// < (left="" shift)="" result4:="p">< 1="" fmt.printf("\nresult="" of="" p="">< 1="%d" ,"="" result4)="">> (right shift) 
result5:= p >> 1
fmt.Printf("\nResult of p >> 1 = %d", result5) 
	
// &^ (AND NOT) 
result6:= p &^ q 
fmt.Printf("\nResult of p &^ q = %d", result6) 
	
	
} 

Rezultat:

Kết quả của p & q = 0
Kết quả của p | q = 54
Kết quả của p ^ q = 54
Kết quả của p < 1="68" kết="" quả="" của="" p="">> 1 = 17
Kết quả của p &^ q = 34

Operator de atribuire

Operatorul de atribuire este utilizat pentru a atribui o valoare unei variabile. Operandul din stânga al operatorului de atribuire este o variabilă, iar operandul din dreapta al operatorului de atribuire este o valoare. Valoarea din dreapta trebuie să aibă același tip de date ca și variabila din stânga, altfel compilatorul va returna o eroare. Diferitele tipuri de operatori de atribuire sunt prezentate mai jos:

  • „="(Atribuire simplă): Acesta este cel mai simplu operator de atribuire. Acest operator este folosit pentru a atribui valoarea din dreapta variabilei din stânga.
  • „+=”(Atribuire suplimentară): Acest operator este o combinație a operatorilor „+” și „=”. Acest operator adaugă mai întâi valoarea curentă a variabilei din stânga la valoarea din dreapta și apoi atribuie rezultatul variabilei din stânga.
  • „-=”(Atribuire minus): Acest operator este o combinație a operatorilor „-” și „=”. Acest operator scade mai întâi valoarea curentă a variabilei din stânga din valoarea din dreapta și apoi atribuie rezultatul variabilei din stânga.
  • „*=”(Atribuire de multiplicare): Acest operator este o combinație a operatorilor „*” și „=”. Acest operator înmulțește mai întâi valoarea curentă a variabilei din stânga cu valoarea din dreapta și apoi atribuie rezultatul variabilei din stânga.
  • „/=” (Atribuire diviziune): Acest operator este o combinație a operatorilor „/” și „=”. Acest operator împarte mai întâi valoarea curentă a variabilei din stânga la valoarea din dreapta, apoi atribuie rezultatul variabilei din stânga.
  • „%="(Atribuirea restului): Acest operator este o combinație a operatorilor „%” și „=”. Acest operator ia mai întâi restul valorii curente a variabilei din stânga dată fiind valoarea din dreapta și apoi atribuie rezultatul variabilei din stânga.
  • „&="(BItwise AND): Acest operator este o combinație a operatorilor „&” și „=”. Acest operator mai întâi „ȘI pe biți” valoarea curentă a variabilei din stânga la valoarea din dreapta, apoi atribuie rezultatul variabilei din stânga.
  • „^=”(SAU exclusiv pe biți): Acest operator este o combinație a operatorilor „^” și „=”. Acest operator mai întâi „Bitwise Exclusive SAU” valoarea curentă a variabilei din stânga cu valoarea din dreapta și apoi atribuie rezultatul variabilei din stânga.
  • „|=”(SAU inclusiv pe biți): Acest operator este o combinație a „|” operatori și „=”. Acest operator mai întâi „Bitwise Inclusive SAU” valoarea curentă a variabilei din stânga cu valoarea din dreapta și apoi atribuie rezultatul variabilei din stânga.
  • „<=: Acest operator este o combinație a operatorilor < ' și '="'." Acest operator „schimbă” mai întâi valoarea curentă a variabilei din stânga cu valoarea din dreapta și apoi atribuie rezultatul variabilei din dreapta.
  • „>>=": Acest operator este o combinație a operatorilor „>>” și ​​„=”. Acest operator mai întâi „Shift Right AND” valoarea curentă a variabilei din stânga cu valoarea din dreapta, apoi atribuie rezultatul variabilei din stânga.

De exemplu:

// Minh họa chương trình Go dùng toán tử gán
package main 
	
import "fmt"
	
func main() { 
var p int = 45
	var q int = 50
	
// “=”(Simple Assignment) 
p = q 
fmt.Println(p) 
	
// “+=”(Add Assignment) 
	p += q 
fmt.Println(p) 
	
//“-=”(Subtract Assignment) 
p-=q 
fmt.Println(p) 
	
// “*=”(Multiply Assignment) 
p*= q 
fmt.Println(p) 
	
// “/=”(Division Assignment) 
	p /= q 
fmt.Println(p) 
	
	// “%=”(Modulus Assignment) 
	p %= q 
fmt.Println(p) 
	
} 

Rezultat:

50
100
50
2500
50
0

Alti operatori

  • &: Acest operator returnează adresa unei variabile.
  • *: Acest operator oferă un pointer către o variabilă.
  • <-: Numele acestui operator este primit. Este folosit pentru a primi o valoare de la
// Minh họa chương trình sử dụng toán tử khác
package main 
	
import "fmt"
	
func main() { 
a := 4
	
// Dùng địa chỉ của toán tử (&) toán tử trỏ gián tiếp (*)

b := &a 
fmt.Println(*b) 
*b = 7
fmt.Println(a) 
} 

Rezultat:

4
7

Lasă un comentariu

Afaceri secundare care chiar dau roade în 2026: 7 opțiuni realiste și compromisurile de știut

Afaceri secundare care chiar dau roade în 2026: 7 opțiuni realiste și compromisurile de știut

Compară activități secundare realiste pentru 2026 în funcție de costul de pornire, comisioane, flexibilitate și controlul veniturilor, cu îndrumări actuale privind impozitele și escrocheriile din surse oficiale.

Ergonomia muncii la distanță în 2026: Modernizați-vă biroul de acasă fără a cumpăra prea mult

Ergonomia muncii la distanță în 2026: Modernizați-vă biroul de acasă fără a cumpăra prea mult

Îmbunătățiți-vă ergonomia biroului de acasă cu îndrumările OSHA și NIOSH actuale privind potrivirea scaunului, înălțimea monitorului, configurarea laptopului, iluminarea și mișcarea.

De ce este importantă inteligența emoțională în leadership - și cum să o construim

De ce este importantă inteligența emoțională în leadership - și cum să o construim

Află de ce contează inteligența emoțională în leadership, unde ajută cel mai mult, cum să o consolidezi și cum să-ți dai seama dacă abordarea ta funcționează.

Cum să faci tranziția către o carieră în tehnologie fără diplomă: O foaie de parcurs axată pe rezultate pentru 2026

Cum să faci tranziția către o carieră în tehnologie fără diplomă: O foaie de parcurs axată pe rezultate pentru 2026

O foaie de parcurs practică pentru a intra în domeniul tehnologiei fără diplomă: alege un rol accesibil, dezvoltă abilități pregătite pentru angajare, demonstrează-le prin proiecte și folosește feedback-ul de la angajare pentru a te îmbunătăți.

Building a Personal Brand on LinkedIn in 2026: What Still Works, What Changed, and What to Ignore

Building a Personal Brand on LinkedIn in 2026: What Still Works, What Changed, and What to Ignore

Build a credible LinkedIn personal brand in 2026 with current profile, content, newsletter, analytics, verification, and visibility guidance from LinkedIn.

Demisii discrete vs. concedieri discrete în 2026: Ce se schimbă cu adevărat la locul de muncă

Demisii discrete vs. concedieri discrete în 2026: Ce se schimbă cu adevărat la locul de muncă

Demisiile discrete și concedierile discrete sunt etichete atrăgătoare, nu diagnostice. Aflați ce se verifică, ce depinde de context și ce pot face angajații și managerii în continuare.

Ascensiunea executivului fracțional: Când conducerea cu jumătate de normă în funcții de conducere are sens

Ascensiunea executivului fracțional: Când conducerea cu jumătate de normă în funcții de conducere are sens

Directorii executivi fracționari oferă funcții de conducere fără angajare cu normă întreagă. Învață când funcționează modelul, ce să ceri și riscurile de gestionat.

Cum să negociezi o mărire de salariu în timpul evaluărilor performanței din trimestrul 4: Un ghid practic pentru deciziile din 2026

Cum să negociezi o mărire de salariu în timpul evaluărilor performanței din trimestrul 4: Un ghid practic pentru deciziile din 2026

Pregătiți o cerere de mărire salarială mai convingătoare pentru trimestrul 4, incluzând date salariale actuale, opțiuni de sincronizare, compromisuri salariale și scenarii pentru rezultate afirmative, parțiale sau negative.

6 High-Income Skills You Can Start Learning Before 2026 Ends

6 High-Income Skills You Can Start Learning Before 2026 Ends

Choose a high-income skill you can realistically start before 2026 ends, with current pay data, learning priorities, and a practical self-check.

Stăpânirea programului de lucru hibrid: un cadru practic care chiar rezistă

Stăpânirea programului de lucru hibrid: un cadru practic care chiar rezistă

Construiește un program de lucru hibrid în jurul sarcinilor, suprapunerii echipei și rezultatelor măsurabile. Vezi modele, semne de avertizare și când să-ți ajustezi planul.