Tipuri de date în Golang

Tipul de date specifică ce tip de date poate conține o variabilă Golang validă . În limba Go, tipurile sunt împărțite în patru categorii, după cum urmează:

Tipuri de date în Golang

  • Tipuri de bază: numere, șiruri și booleeni
  • Tipuri de agregate: tablouri și structuri
  • Tipuri de referință: Pointer, slice, hartă, funcție și canal
  • Tipul de interfață

Aici vom discuta despre tipurile de date de bază în limba Go. Acestea sunt clasificate în trei subcategorii:

  • Număr
  • boolean
  • Lanţ

Tipuri de date comune în Golang

Numerele în Golang

În limba Go, numerele sunt împărțite în trei subcategorii:

Numerele întregi: în limba Go, atât numerele întregi cu semne, cât și cele fără semne vin în patru dimensiuni diferite, așa cum se arată în tabelul de mai jos. Numerele întregi cu semn sunt reprezentate prin intși numerele întregi fără semn sunt reprezentate prin uint.

Operații aritmetice posibile: adunarea, scăderea, înmulțirea, împărțirea, restul

Tip de date

Descrie

int8 Număr întreg cu semn pe 8 biți
int16 întreg cu semn pe 16 biți
int32 Număr întreg cu semn pe 32 de biți
int64 Număr întreg cu semn pe 64 de biți
uint8 întreg fără semn pe 8 biți
uint16 Integer1 nesemnat pe 6 biți
uint32 Număr întreg nesemnat pe 32 de biți
uint64 întreg fără semn pe 64 de biți
int Atât nesemnate cât și semnate au aceeași dimensiune, 32 sau 64 de biți
uint Atât nesemnate cât și semnate au aceeași dimensiune, 32 sau 64 de biți
rune Acesta este un sinonim pentru int32 și reprezintă, de asemenea, puncte de cod Unicode.
octet Acesta este un sinonim pentru uint8.
uintptr Acesta este un tip întreg fără semn. Lățimea sa este nedefinită, dar poate conține toți biții unei valori pointer.

De exemplu:

// Chương trình Go sử dụng số nguyên
package main 
import "fmt"
		
func main() {
	
	// Dùng 8-bit unsigned int 
	var X uint8 = 225
	fmt.Println(X, X-3)
	
	// Dùng 16-bit signed int 
	var Y int16 = 32767
	fmt.Println(Y+2, Y-2) 
}

Rezultat:

225 222
-32767 32765

Exemplu de operații aritmetice:

// Các phép tính số học có thể có đối với số nguyên
// Tác giả : Chhanda Saha

package main

import "fmt"

func main() {

	var x int16 = 170
	var y int16 = 83
	//Cộng
	fmt.Printf(" addition : %d + %d = %d\n ", x, y, x+y)
	//Trừ
	fmt.Printf("subtraction : %d - %d = %d\n", x, y, x-y)
	//Nhân
	fmt.Printf(" multiplication : %d * %d = %d\n", x, y, x*y)
	//Chia
	fmt.Printf(" division : %d / %d = %d\n", x, y, x/y)
	//Mô đun
	fmt.Printf(" remainder : %d %% %d = %d\n", x, y, x%y)
}

Rezultat:

Cộng :  170 + 83 = 253
Trừ : 170 - 83 = 87
Nhân : 170 * 83 = 14110
Chia : 170 / 83 = 2
Số dư : 170 % 83 = 4 
  • Numere în virgulă mobilă: în limba Go, numerele în virgulă mobilă sunt împărțite în două tipuri, așa cum se arată în tabelul de mai jos.
    • Operațiile aritmetice pot fi: adunarea, scăderea, înmulțirea, împărțirea.
    • Există trei fonturi:
      • zecimală (3,15)
      • putere (12e18 sau 3e10)
      • mixt (13.16e12)
Tip de date

Descrie

plutitor32 Număr în virgulă mobilă IEEE 754 pe 32 de biți
float64 Număr în virgulă mobilă IEEE 754 pe 64 de biți

De exemplu:

//Minh họa chương trình Go dùng số dấu chấm động
package main 
import "fmt"
		
func main() {
	a := 20.45
	b := 34.89
	
	// Phép trừ hai số dấu chấm động
	c := b-a
	
	// Hiện kết quả
	fmt.Printf("Result is: %f", c)
	
	// Hiện kiểu biến C
	fmt.Printf("\nThe type of c is : %T", c) 
}

Rezultat:

Kết quả: 14.440000
Kiểu của C là : float64

Exemplu de operații aritmetice pentru numere în virgulă mobilă:

// Các phép toán số học có thể có cho số thực
// Tác giả : Chhanda Saha
package main

import "fmt"

func main() {
	var x float32 = 5.00
	var y float32 = 2.25
	//Phép cộng
	fmt.Printf("addition : %g + %g = %g\n ", x, y, x+y)
	//Phép trừ
	fmt.Printf("subtraction : %g - %g = %g\n", x, y, x-y)
	//Phép nhân
	fmt.Printf("multiplication : %g * %g = %g\n", x, y, x*y)
	//Phép chia
	fmt.Printf("division : %g / %g = %g\n", x, y, x/y)

}

Rezultat:

Phép cộng :  5 + 2.25 = 7.25
Phép trừ : 5 - 2.25 = 2.75
Phép nhân : 5 * 2.25 = 11.25
Phép chia : 5 / 2.25 = 2.2222223
  • Numere complexe: numerele complexe sunt împărțite în două părți, prezentate în tabelul de mai jos. float32și float64face parte, de asemenea, din aceste numere complexe. Funcția de integrare generează un număr complex din părțile sale imaginare și reale, iar funcția de integrare extrage acele părți.
    • Există mai multe funcții încorporate în numere complexe:
      • complex – creează un număr complex din două flotoare.
      • real() – primește partea reală a numărului complex de intrare ca un float.
      • imag() – obțineți partea imaginară a numărului complex de intrare ca un float
Tip de date

Descrie

complex64 Numerele complexe conțin float32 ca componente reale și imaginare.
complex128 Numerele complexe conțin float64 ca componente reale și imaginare.

De exemplu:

// Chương trình Go dùng số phức
package main
import "fmt"

func main() {
	
var a complex128 = complex(6, 2)
var b complex64 = complex(9, 2)
fmt.Println(a)
fmt.Println(b)
	
// Hiện kiểu
fmt.Printf("The type of a is %T and "+
			"the type of b is %T", a, b)
}

Rezultat:

(6+2i)
(9+2i)
Kiểu của a là complex128, kiểu của b là complex64

Exemple de funcții încorporate:

// Các hàm tích hợp là số phức
// Tác giả : Chhanda Saha
package main

import "fmt"

func main() {
	comp1 := complex(10, 11)
	// cú pháp init số phức
	comp2 := 13 + 33i
	fmt.Println("Complex number 1 is :", comp1)
	fmt.Println("Complex number 1 is :", comp2)
	// lấy phần real
	realNum := real(comp1)
	fmt.Println("Real part of complex number 1:", realNum)
	// lấy phần hình ảnh
	imaginary := imag(comp2)
	fmt.Println("Imaginary part of complex number 2:", imaginary)

}

Rezultat:

Số phức 1 là: (10+11i)
Số phức 1 là: (13+33i)
Phần thực của số phức 1: 10
Phần ảo của số phức 2: 33

boolean

Tipul de date boolean reprezintă doar un bit de informație care este fie adevărat, fie fals. Valorile de tip boolean nu sunt convertite implicit sau explicit în niciun alt tip.

De exemplu:

//Minh họa chương trình dùng boolean
package main
import "fmt"

func main() {
	
	// Các biến
str1 := "Quantrimang"
str2:= "quantrimang"
str3:= "Quantrimang"
result1:= str1 == str2
result2:= str1 == str3
	
// Hiện kết quả
fmt.Println( result1)
fmt.Println( result2)
	
// Hiện kiểu của result1 và result2
fmt.Printf("Kiểu của result1 là %T và "+
				"kiểu của result2 là %T",
							result1, result2)
	
}

Rezultat:

false
true
Kiểu của result1 là bool và kiểu của result2 là bool

Lanţ

Tipul de date șir reprezintă o secvență de puncte de cod Unicode. Cu alte cuvinte, putem spune că un șir este o secvență imuabilă de octeți, adică odată ce un șir este creat, nu îl puteți modifica. Șirurile de caractere pot conține date arbitrare, inclusiv octeți cu valoare zero în formă care poate fi citită de om. Șirurile pot fi concatenate folosind operatorul de adăugare (+).

De exemplu:

// Chương trình Go dùng chuỗi
package main
import "fmt"

func main() {
	
	// Biến str chứa chuỗi
str := "Quantrimang"
	
// Hiện độ dài của chuỗi
fmt.Printf("Length of the string is:%d",
								len(str))
	
// Hiện chuỗi
fmt.Printf("\nString is: %s", str)
	
// Hiện kiểu biến str 
fmt.Printf("\nType of str is: %T", str)
}

Rezultat:

Chiều dài của chuỗi là: 13
Chuỗi là: Quantrimang
Kiểu của chuỗi là: chuỗi

Exemplu de concatenare de șiruri:

// Nối chuỗi
// Tác giả : Chhanda Saha
package main

import "fmt"

func main() {
	var str1 string = "STRING_"
	var str2 string = "Concatenation"

	// Nối chuỗi bằng toán tử + 
	fmt.Println("New string : ", str1+str2)

}

Rezultat:

New string :  STRING_Concatenation

Lasă un comentariu

Ar fi Europa atrasă într-un ipotetic război nuclear SUA-Israel-Iran? Regulile NATO explicate

Ar fi Europa atrasă într-un ipotetic război nuclear SUA-Israel-Iran? Regulile NATO explicate

Un ghid pentru articolele 4 și 5 ale NATO, regulile ONU de autoapărare și de ce consultarea nu înseamnă intrarea automată a Europei în război.

Ar putea Iranul să aibă deja arme nucleare? Cum să interpretăm dovezile

Ar putea Iranul să aibă deja arme nucleare? Cum să interpretăm dovezile

Evaluați afirmațiile despre Iran în șase etape, distingând îmbogățirea uraniului, dezvoltarea de arme și posesia verificată.

Autoritatea Nucleară a SUA și Israelului: Ce explică de fapt sursele publice

Autoritatea Nucleară a SUA și Israelului: Ce explică de fapt sursele publice

Înțelegerea autorității decizionale în domeniul nuclear în șase etape, inclusiv controlul civil al SUA și limitele informațiilor publice despre Israel.

Strâmtoarea Hormuz în 2026: Ce spun sursele oficiale despre perturbările transportului maritim

Strâmtoarea Hormuz în 2026: Ce spun sursele oficiale despre perturbările transportului maritim

Un ghid al dovezilor oficiale din 2026 privind perturbările transporturilor maritime din Hormuz, afirmațiile legate de Iran, incidentele confirmate și ce rămâne incert.

Un ipotetic atac nuclear americano-israelian asupra Iranului ar provoca un al Treilea Război Mondial?

Un ipotetic atac nuclear americano-israelian asupra Iranului ar provoca un al Treilea Război Mondial?

Un ghid bazat pe surse privind riscurile de escaladare nucleară, regulile Cartei ONU și articolul 5 din NATO într-un scenariu strict ipotetic cu Iranul.

Cum să te pregătești pentru o ipotetică pană de curent legată de EMP: 5 pași pentru civili

Cum să te pregătești pentru o ipotetică pană de curent legată de EMP: 5 pași pentru civili

Urmați cinci pași pentru a vă pregăti pentru o întrerupere a energiei; scenariile nucleare și cele EMP sunt ipotetice, iar instrucțiunile oficiale privind adăpostul sunt prioritare.

Cum să evaluezi perturbările cibernetice fără a presupune că a fost vorba de Al Treilea Război Mondial: Un ghid în 5 pași

Cum să evaluezi perturbările cibernetice fără a presupune că a fost vorba de Al Treilea Război Mondial: Un ghid în 5 pași

Folosește 5 pași defensivi pentru a verifica o întrerupere cibernetică, a proteja conturile gospodăriei și a evita confundarea unei întreruperi cu un război.

Iarnă nucleară: Cum să evaluăm efectele climatice globale ale unui ipotetic atac al Iranului

Folosește acești 5 pași pentru a evalua efectele climatice ale unui ipotetic atac iranian, compară ipotezele modelului și evită predicțiile nefondate.

Cât timp ar putea dura până și-ar reveni Pământul după un ipotetic război nuclear?

Cât timp ar putea dura până și-ar reveni Pământul după un ipotetic război nuclear?

Explorează șase pași pentru citirea cercetărilor despre climă, alimente și refacerea ecosistemelor după un conflict nuclear ipotetic.

Listă de verificare pentru pregătirea pentru căderi nucleare: provizii esențiale și pași pentru adăpost

Listă de verificare pentru pregătirea pentru căderi nucleare: provizii esențiale și pași pentru adăpost

Construiți un kit practic de pregătire pentru căderi radioactive în șase pași, cu alimente și apă sigilate, un radio, provizii medicale și îndrumări pentru adăposturi.