Junior — Middle
Explique o princípio de funcionamento da construção type switch na linguagem Go e em que ela difere do switch-case comum.
sobes.tech IA
Resposta da IA
Na linguagem Go, a construção type switch é usada para determinar um tipo específico de um valor de interface em tempo de execução. Ela permite executar ações diferentes dependendo do tipo ao qual a variável que implementa a interface pertence.
Exemplo de sintaxe:
switch v := x.(type) {
case int:
fmt.Println("int", v)
case string:
fmt.Println("string", v)
default:
fmt.Println("outro tipo")
}
Aqui, x é uma variável de tipo interface, e v é uma variável com um tipo específico dentro de cada case.
Diferença para o switch-case comum:
- O switch comum compara o valor da expressão com constantes ou expressões.
- O type switch compara o tipo do valor da interface, não o valor em si.
O type switch é útil para trabalhar com interfaces, quando é necessário realizar ações diferentes dependendo do tipo real do objeto armazenado na interface.