Variáveis e Constantes
Go possui tipagem estática para as variáveis,significa que a variável sempre terá um tipo e não poderá mudar.Não é necessário definir o tipo se ela conter um valor inicial.
Os tipos são:
bool
string
int int8 int16 int32 int64
uint uint8 uint16 uint32 uint64 uintptr
byte // pseudônimo para uint8
rune // pseudônimo para int32 representa um ponto de código Unicode
float32 float64
complex64 complex128
Para os números temos os operadores :
- + Adição
- - Subtração
- * Multiplicação
- / Divisão
- % Resto da divisão
Para Strings temos o "+" para concatenar strings,e para os boleanos temos:
- && and
- || or
- ! not
Para criar uma variável usamos a palavra reservada var listo alguns exemplos:
Variáveis simples
ex.: var idade int var nome string
Se as variáveis tiverem o mesmo tipo:
ex.: var x,y,z int
Variáveis podem começar com valor
ex.: var nome,idade,trabalhando "Renato Suero", 28, true
Dentro de uma função pode-se utilizar a atribuição curta ":=" substituindo o var
ex.: nome := "Renato Suero"
Importante dizer que podemos criar vetores ,vou mostrar como se cria,falarei deles em outro post.
ex.: var valores []int e com valores iniciais var valores []int{2,3,5}
Constantes são declaradas como variáveis mas com a palavra chave const, elas podem ser strings,boleanas ou numéricas e não alteram seu valor
const Porta = 22
#Mão na Massa
Infelizmente não temos muita coisa legal para fazer agora,mas é fundamental entender como usar as variáveis.
package main
import "fmt"
const Pi = 3.14 ///criamos uma constante com o clássico PI :D
func main(){ var nome string var idade int
var ( // não detalhei acima,mas é uma forma de criar múltiplas variáveis
a = 5 b = 10 c = 15
)
fmt.Println(Pi)
nome = "Renato Suero"
fmt.Println(nome)
trabalhando := true
fmt.Println(trabalhando)
//// concatenando strings
profissao:= "Programador"
fmt.Println(nome + profissao)
//// Operações Matemáticas
fmt.Println(a + b)
fmt.Println(a * b)
fmt.Println(c % a)
//// Operadores Lógicos
fmt.Println(true && true)
fmt.Println(true && false)
fmt.Println(true || true)
fmt.Println(true || false)
fmt.Println(!true)
}