Go - Constantes
Constantes referem-se a valores fixos que o programa não pode alterar durante sua execução. Esses valores fixos também são chamadosliterals.
As constantes podem ser de qualquer um dos tipos de dados básicos, como uma constante inteira, uma constante flutuante, uma constante de caractere ou um literal de string . Também existem constantes de enumeração.
As constantes são tratadas como variáveis regulares, exceto que seus valores não podem ser modificados após sua definição.
Literais inteiros
Um literal inteiro pode ser uma constante decimal, octal ou hexadecimal. Um prefixo especifica a base ou raiz: 0x ou 0X para hexadecimal, 0 para octal e nada para decimal.
Um literal inteiro também pode ter um sufixo que é uma combinação de U e L, para sem sinal e longo, respectivamente. O sufixo pode ser maiúsculo ou minúsculo e pode estar em qualquer ordem.
Aqui estão alguns exemplos de literais inteiros -
212 /* Legal */
215u /* Legal */
0xFeeL /* Legal */
078 /* Illegal: 8 is not an octal digit */
032UU /* Illegal: cannot repeat a suffix */
A seguir estão outros exemplos de vários tipos de literais inteiros -
85 /* decimal */
0213 /* octal */
0x4b /* hexadecimal */
30 /* int */
30u /* unsigned int */
30l /* long */
30ul /* unsigned long */
Literais de ponto flutuante
Um literal de ponto flutuante possui uma parte inteira, um ponto decimal, uma parte fracionária e uma parte expoente. Você pode representar literais de ponto flutuante tanto na forma decimal quanto na forma exponencial.
Ao representar usando a forma decimal, você deve incluir a vírgula decimal, o expoente ou ambos e, ao representar usando a forma exponencial, você deve incluir a parte inteira, a parte fracionária ou ambas. O expoente assinado é introduzido por e ou E.
Aqui estão alguns exemplos de literais de ponto flutuante -
3.14159 /* Legal */
314159E-5L /* Legal */
510E /* Illegal: incomplete exponent */
210f /* Illegal: no decimal or exponent */
.e55 /* Illegal: missing integer or fraction */
Sequência de fuga
Quando certos caracteres são precedidos por uma barra invertida, eles terão um significado especial em Go. Eles são conhecidos como códigos de sequência de escape, que são usados para representar nova linha (\ n), tab (\ t), backspace, etc. Aqui, você tem uma lista de alguns desses códigos de sequência de escape -
Sequência de fuga | Significado |
---|---|
\\ | \ personagem |
\ ' | ' personagem |
\ " | " personagem |
\? | ? personagem |
\uma | Alerta ou sino |
\ b | Backspace |
\ f | Feed de formulário |
\ n | Nova linha |
\ r | Retorno de carruagem |
\ t | Aba horizontal |
\ v | Guia vertical |
\ ooo | Número octal de um a três dígitos |
\ xhh. . . | Número hexadecimal de um ou mais dígitos |
O exemplo a seguir mostra como usar \t em um programa -
package main
import "fmt"
func main() {
fmt.Printf("Hello\tWorld!")
}
Quando o código acima é compilado e executado, ele produz o seguinte resultado -
Hello World!
Literais de string em Go
Literais ou constantes de string são colocados entre aspas duplas "". Uma string contém caracteres semelhantes aos literais de caracteres: caracteres simples, sequências de escape e caracteres universais.
Você pode quebrar uma linha longa em várias linhas usando literais de string e separando-as usando espaços em branco.
Aqui estão alguns exemplos de literais de string. Todas as três formas são strings idênticas.
"hello, dear"
"hello, \
dear"
"hello, " "d" "ear"
A palavra- chave const
Você pode usar const prefixo para declarar constantes com um tipo específico da seguinte forma -
const variable type = value;
O exemplo a seguir mostra como usar o const palavra-chave -
package main
import "fmt"
func main() {
const LENGTH int = 10
const WIDTH int = 5
var area int
area = LENGTH * WIDTH
fmt.Printf("value of area : %d", area)
}
Quando o código acima é compilado e executado, ele produz o seguinte resultado -
value of area : 50
Observe que é uma boa prática de programação definir constantes em MAIÚSCULAS.