Os tipos de dados especificam os tipos de valores que serão usados em um programa. Os tipos do dados também determina quais operações podem ser executadas nesses dados. Uma forma de pensar sobre os tipos é considerar os diferentes dados que usamos no mundo real. Exemplos de dados no mundo real são os números:
- números naturais (0, 1, 2,…), usamos eles para contar (incluindo o zero) e é infinito;
- números inteiros (…, -1, 0, 1,…) são todos os elementos dos números naturais (N) e seus opostos;
- números irracionais (π), são os números decimais não exatos com uma representação infinita e não periódica, por exemplo: 3,141592… ou 1,203040….
Na linguagem Go precisamos informar o tipo, os principais tipos primitivos da linguagem são: string, boolean, inteiros e números de ponto flutuante.
String
O tipo String é o responsável por representar valores de texto.
var nome string
nome = "Diego"
Boolean
O tipo boolean é responsável por definir o valor de uma variável como true
(verdadeiro) ou false
(falso). Diferente de outras linguagens de programação, em Go, um boolean não pode ser representado por números ,0 e 1, por exemplo.
var ligado bool
ligado = true
Por padrão, quando declaramos um boolean e não definimos um valor inicial para ele, o mesmo passa a ter false
como seu valor.
Inteiros
Os números inteiros são constituídos dos números naturais e seus simétricos negativos, incluindo o zero.
var ano int64
ano = 2021
Na linguagem Go, podemos declarar números inteiros com capacidades de bytes diferentes.
- rune : -2,147,483,648 ~ 2,147,483,647
- int8 : -128 ~ 127
- int16 : -32,768 ~ 32,767
- int32 : -2,147,483,648 ~ 2,147,483,647
- int64 : -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807
var runeVar rune = 255
var intVar int8 = 100
var intVar2 int16 = -200
var intVar3 int32 = 3000
var intVar4 int64 = -20000
Para números inteiros, existem aqueles que possuem capacidade apenas, para valores positivos.
- byte : 0 ~ 255
- uint8 : 0 ~ 255
- uint16 : 0 ~ 65,535
- uint32 : 0 ~ 4,294,967,295
- uint64 : 0 ~ 18,446,744,073,709,551,615
var byteVar byte = 12
var uintVar uint8 = 35
var uintVar2 uint16 = 114
var uintVar3 uint32 = 1278
var uintVar4 uint64 = 27001
Fracionários
Os números fracionários são definidos como aqueles que representam uma ou mais partes do todo, isto é, ao dividir um objeto em um determinado número de partes, cada conjunto dessas partes é um número fracionário.
- float32 : -3.4^38 ~ +3.4^38
- float64 : -1.7^308 to +1.7^308
Também chamamos comumente também de números de ponto flutuante ou float. A diferença de 32 ou 64, diz respeito a capacidade de armazenamento de dados na varíavel. Se serão 32 ou 64 bits de capacidade.
var varFloat32 float32 = 19.20
var varFloat64 float64 = 61.337
Complexos
Os números complexos são números compostos por uma parte real e uma imaginária. Eles representam o conjunto de todos os pares ordenados (x, y), cujos elementos pertencem ao conjunto dos números reais (R).
- complex64 : conjunto de todos os números complexos com partes reais e imaginárias do float32
- complex128 : conjunto de todos os números complexos com partes reais e imaginárias do float64
Declaração de variáveis
Existem diversas formas de sintaxe que podem ser utilizadas para definir variáveis em Go.
A palavra-chave var
é a forma mais básica de definir variáveis. Observe que a linguagem Go coloca o tipo da variável depois do nome da variável.
// Define uma variável com o nome “variableName” e o tipo "type"
var variableName type
Definir múltiplas variáveis.
// Define três variáveis do tipo "type"
var vname1, vname2, vname3 type
Definir uma variável com um valor inicial.
// Define variável chamada “variableName”, tipo "type" e valor "value"
var variableName type = value
Definir múltiplas variáveis com valores iniciais.
/*
Define três variáveis de tipo "type" e inicializa seus valores.
vname1 recebe v1, vname2 recebe v2, vname3 recebe v3
*/
var vname1, vname2, vname3 type = v1, v2, v3
Variáveis declaradas sem um valor inicial explicitado darão seu valor zero. Zero para tipos numéricos, false
para boleanos e "" (string vazia) para strings.
That's all folks! ✌️
Top comments (2)
nice work buddy
Thank you!