DEV Community

Cover image for Golang - Tipos de dados
Diego Alves
Diego Alves

Posted on

Golang - Tipos de dados

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"
Enter fullscreen mode Exit fullscreen mode

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
Enter fullscreen mode Exit fullscreen mode

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
Enter fullscreen mode Exit fullscreen mode

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
Enter fullscreen mode Exit fullscreen mode

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
Enter fullscreen mode Exit fullscreen mode

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
Enter fullscreen mode Exit fullscreen mode

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
Enter fullscreen mode Exit fullscreen mode

Definir múltiplas variáveis.

// Define três variáveis do tipo "type"
var vname1, vname2, vname3 type
Enter fullscreen mode Exit fullscreen mode

Definir uma variável com um valor inicial.

// Define variável chamada “variableName”, tipo "type" e valor "value"
var variableName type = value
Enter fullscreen mode Exit fullscreen mode

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
Enter fullscreen mode Exit fullscreen mode

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! ✌️

Oldest comments (2)

Collapse
 
ajithjojo profile image
Ajith jojo

nice work buddy

Collapse
 
dgoposts profile image
Diego Alves

Thank you!