Go - Tipos de Dados
Na linguagem de programação Go, os tipos de dados se referem a um sistema extensivo usado para declarar variáveis ou funções de diferentes tipos. O tipo de uma variável determina quanto espaço ela ocupa no armazenamento e como o padrão de bits armazenado é interpretado.
Os tipos em Go podem ser classificados da seguinte forma -
Sr. Não. | Tipos e descrição |
---|---|
1 | Boolean types Eles são tipos booleanos e consistem em duas constantes predefinidas: (a) verdadeiro (b) falso |
2 | Numeric types Eles são novamente tipos aritméticos e representam a) tipos inteiros ou b) valores de ponto flutuante em todo o programa. |
3 | String types Um tipo de string representa o conjunto de valores de string. Seu valor é uma sequência de bytes. Strings são tipos imutáveis que, uma vez criados, não é possível alterar o conteúdo de uma string. O tipo de string pré-declarado é string. |
4 | Derived types Eles incluem (a) Tipos de ponteiro, (b) Tipos de matriz, (c) Tipos de estrutura, (d) Tipos de união e (e) Tipos de função f) Tipos de fatia g) Tipos de interface h) Tipos de mapa i) Tipos de canal |
Tipos de matriz e tipos de estrutura são coletivamente referidos como aggregate types. O tipo de uma função especifica o conjunto de todas as funções com o mesmo parâmetro e tipos de resultado. Discutiremos os tipos básicos na seção seguinte, enquanto outros tipos serão abordados nos próximos capítulos.
Tipos inteiros
Os tipos inteiros independentes de arquitetura predefinidos são -
Sr. Não. | Tipos e descrição |
---|---|
1 | uint8 Inteiros de 8 bits sem sinal (0 a 255) |
2 | uint16 Inteiros de 16 bits sem sinal (0 a 65535) |
3 | uint32 Inteiros de 32 bits sem sinal (0 a 4294967295) |
4 | uint64 Inteiros de 64 bits sem sinal (0 a 18446744073709551615) |
5 | int8 Inteiros de 8 bits com sinal (-128 a 127) |
6 | int16 Inteiros assinados de 16 bits (-32768 a 32767) |
7 | int32 Inteiros assinados de 32 bits (-2147483648 a 2147483647) |
8 | int64 Inteiros de 64 bits assinados (-9223372036854775808 a 9223372036854775807) |
Tipos Flutuantes
Os tipos de float independentes de arquitetura predefinidos são -
Sr. Não. | Tipos e descrição |
---|---|
1 | float32 Números de ponto flutuante IEEE-754 de 32 bits |
2 | float64 Números de ponto flutuante IEEE-754 de 64 bits |
3 | complex64 Números complexos com float32 partes reais e imaginárias |
4 | complex128 Números complexos com partes reais e imaginárias float64 |
O valor de um número inteiro de n bits é de n bits e é representado usando operações aritméticas de complemento de dois.
Outros Tipos Numéricos
Também há um conjunto de tipos numéricos com tamanhos específicos de implementação -
Sr. Não. | Tipos e descrição |
---|---|
1 | byte mesmo que uint8 |
2 | rune mesmo que int32 |
3 | uint 32 ou 64 bits |
4 | int mesmo tamanho que uint |
5 | uintptr um inteiro sem sinal para armazenar os bits não interpretados de um valor de ponteiro |