Definindo Tipos Personalizados
Parte da seção Fundamentos do Journey de GO da Coddy. Lição 94 de 109.
Em Go, você pode criar seus próprios tipos personalizados com base em tipos existentes. Isso dá mais clareza e segurança de tipos ao seu código.
Defina um tipo personalizado para temperatura em Celsius:
type Celsius float64
func main() {
var temperature Celsius = 25.5
fmt.Printf("Temperature: %.1f°C\n", temperature)
}O resultado mostra o valor da temperatura:
Temperature: 25.5°CTipos personalizados se comportam como seus tipos subjacentes, mas são tratados como tipos distintos pelo compilador, melhorando a legibilidade do código e evitando erros lógicos.
Desafio
InicianteNeste desafio, você vai praticar a definição de um tipo personalizado em Go. Tipos personalizados permitem criar seus próprios tipos de dados com base nos já existentes.
Sua tarefa é definir um tipo personalizado chamado Temperature baseado em float64 e, em seguida, criar uma variável desse tipo.
Depois de definir o tipo, o programa deve imprimir o valor e o tipo da variável de temperatura.
Experimente você mesmo
package main
import "fmt"
// TODO: Defina um tipo personalizado chamado 'Temperature' baseado em float64
func main() {
// Crie uma variável do tipo Temperature com o valor 23.5
var roomTemp Temperature = 23.5
// Exiba o valor e o tipo de roomTemp
fmt.Printf("Room temperature: %v\n", roomTemp)
fmt.Printf("Type of roomTemp: %T\n", roomTemp)
}Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentos
4Operadores de Comparação e Lógicos
Operadores de Comparação - Parte 1Operadores de Comparação - Parte 2Operador Lógico ANDOperador Lógico OROperador Lógico NOTFundamentos de Precedência de OperadoresRecapitulação - Fazendo Comparações7Fluxo de Controle: Loops
O Loop `for` ExplicadoLoop For - BásicoLoop For - Apenas CondiçãoA Palavra-chave `break`A Palavra-chave `continue`Loops AninhadosRecapitulação - Repetindo Ações10Tipos Compostos: Arrays
Introdução a ArraysDeclarando ArraysInicializando ArraysAcessando Elementos de um ArrayTamanho do Array com `len`Iterando sobre ArraysArrays Multidimensionais13Tipos Compostos: Structs
Definindo Tipos PersonalizadosCriando Instâncias de StructsAcessando Campos de StructsPonteiros para StructsInicializando StructsStructs IncorporadasStructs AnônimasRecapitulação - Estruturas de Dados Personalizadas2Variáveis e Tipos de Dados Básicos
O que é uma variávelInferência de Tipo com `:=`Inteiros (int)Números de Ponto FlutuanteBooleanosStringsValores ZeroConstantesConvenções de NomenclaturaRecapitulação - Variáveis e Tipos5Entrada/Saída Básica
Saída FormatadaVerbos de FormataçãoImprimindo TiposObtendo Entrada Básica do UsuárioRecapitulação - Entrada e Saída8Funções
Entendendo FunçõesDeclarando uma FunçãoChamando FunçõesParâmetros de FunçãoRetornando um Único ValorRetornando Múltiplos ValoresValores de Retorno NomeadosFundamentos de Escopo de FunçãoRecapitulação - Criando Código Reutilizável3Operadores Básicos
Operadores AritméticosOperador de DivisãoO Operador MóduloOperador de AtribuiçãoOperadores de Atribuição CompostaIncremento e DecrementoRecapitulação - Cálculos6Fluxo de Controle: Condicionais
A Instrução `if`A Palavra-chave `else`A Palavra-chave `else if`Sombreamento de Variáveis no `if`Inicializando VariáveisA Instrução `switch`Switch com ExpressõesSwitch sem ExpressãoA Palavra-chave `fallthrough`Recapitulação - Tomando DecisõesPratique por conta própria: Compilador de Go online