Sentencia Switch en Go

Golang, como la mayoría de los otros lenguajes de programación, tiene la declaración switch . La declaración switch en Golang  le permite evaluar una variable o expresión en múltiples casos y se utiliza a menudo cuando escribir múltiples declaraciones if-else hace que el código se vea feo y repetitivo.

Sentencia Switch en Go

En Go, la declaración switch es una declaración de ramificación multidireccional que dirige efectivamente la ejecución en función del valor (o tipo) de una expresión. Hay dos tipos principales de declaraciones switch en Go :

  • Interruptor de expresión
  • Interruptor de tipo

Por ejemplo:

package main
import "fmt"

func main() {
    day := 4
    switch day {
    case 1:
        fmt.Println("Monday")
    case 2:
        fmt.Println("Tuesday")
    case 3:
        fmt.Println("Wednesday")
    case 4:
        fmt.Println("Thursday")
    case 5:
        fmt.Println("Friday")
    default:
        fmt.Println("Invalid day")
    }
}

Sintaxis de la instrucción Switch en Golang

switch optstatement; optexpression {
case expression1:
    // Khối code
case expression2:                                                          # Expression Switch
    // Khối code
default:
    // Khối code
}

switch var := interfaceValue.(type) {
case type1:
    // Khối code
case type2:                                                                    # Type Switch
    // Khối code
default:
    // Khối code
}

Interruptor de expresión

Expression Switch evalúa una expresión y cambia a un caso según el valor de esa expresión. Si no se proporciona ninguna expresión, el valor predeterminado del conmutador es verdadero .

Sintaxis

switch optstatement; optexpression {
case expression1:
    // Khối code
case expression2:
    // Khối code
default:
    // Khối code
}

optstatement: Declaración opcional (por ejemplo, declaración de variable).
optexpression: expresión opcional (si se omite, el valor predeterminado es verdadero ).

Ejemplo con comando opcional

Aquí se introduce una declaración opcional que declara una variable de día . Luego, la instrucción switch evalúa el día según diferentes casos.

package main
import "fmt"
func main() {
    switch day := 4; day {
    case 1:
        fmt.Println("Monday")
    case 2:
        fmt.Println("Tuesday")
    case 3:
        fmt.Println("Wednesday")
    case 4:
        fmt.Println("Thursday")
    case 5:
        fmt.Println("Friday")
    default:
        fmt.Println("Invalid day")
    }
}

Resultado:

Thursday

Ejemplo con expresión opcional

Si no se especifica ninguna expresión, la declaración switch en Golang asumirá que la expresión es verdadera. Esto nos permite utilizar condiciones booleanas en declaraciones de caso.

package main
import "fmt"

func main() {
    day := 4

    switch {
    case day == 1:
        fmt.Println("Monday")
    case day == 4:
        fmt.Println("Thursday")
    case day > 5:
        fmt.Println("Weekend")
    default:
        fmt.Println("Invalid day")
    }
}

Resultado

Thursday

Interruptor de tipo

El cambio de tipo se utiliza para ramificar según el tipo de valor de una interfaz, en lugar de su valor. Esto es especialmente útil cuando se trata con variables de tipo desconocido.

Sintaxis

switch var := interfaceValue.(type) {
case type1:
    // Khối code
case type2:
    // Khối code
default:
    // Khối code
}

Por ejemplo:

Este ejemplo utiliza la misma variable de día pero envuelta en la interfaz {} para ilustrar la conversión de tipos.

package main
import "fmt"
func main() {
    var day interface{} = 4
    switch v := day.(type) {
    case int:
        switch v {
        case 1:
            fmt.Println("Monday")
        case 2:
            fmt.Println("Tuesday")
        case 3:
            fmt.Println("Wednesday")
        case 4:
            fmt.Println("Thursday")
        case 5:
            fmt.Println("Friday")
        default:
            fmt.Println("Invalid day")
        }
    default:
        fmt.Printf("Unknown type: %T\n", v)
    }
}

Resultado:

Thursday
Sign up and earn $1000 a day ⋙

Leave a Comment

Cómo usar constantes en Golang

Cómo usar constantes en Golang

¿Qué es Constante o Const en Golang? Esto es lo que necesita saber sobre el uso de constantes en Go.

Funciones volátiles en Golang

Funciones volátiles en Golang

Las funciones variádicas en Go le permiten pasar una cantidad variable de argumentos a una función. Aquí encontrará todo lo que necesita saber sobre las funciones volátiles en Golang.

Parámetros de retorno con nombre en Golang

Parámetros de retorno con nombre en Golang

En Golang, los parámetros de retorno con nombre a menudo se denominan parámetros con nombre. Golang permite nombrar los parámetros de retorno o los resultados de las funciones en la firma o definición de la función.

Palabras clave en Go

Palabras clave en Go

Palabra clave: Las palabras clave son palabras en un lenguaje que se utilizan para algún proceso interno o representan alguna acción predefinida. Aquí tienes lo que necesitas saber sobre las palabras clave en Golang.

Tipos de datos en Golang

Tipos de datos en Golang

El tipo de datos especifica el tipo de datos que puede contener una variable Go válida. En el lenguaje Go, los tipos se dividen en cuatro categorías como sigue:

Argumentos de función en Golang

Argumentos de función en Golang

Go admite dos formas principales de pasar argumentos: pasar por valor y pasar por referencia. Go utiliza el paso por valor de manera predeterminada.

Función que devuelve múltiples valores en Golang

Función que devuelve múltiples valores en Golang

En el lenguaje Go, se permite devolver múltiples valores de una función, utilizando la declaración de retorno. En otras palabras, en una función, una declaración de retorno puede devolver múltiples valores.

Casos a conocer al utilizar sentencias de selección en Golang

Casos a conocer al utilizar sentencias de selección en Golang

En este artículo, aprenderemos cómo utilizar el caso predeterminado para evitar el bloqueo. Pero primero, ¿averigüemos qué es el caso de bloqueo cuando se utiliza el comando de selección de Golang?

Estructuras y campos anónimos en Golang

Estructuras y campos anónimos en Golang

Las estructuras anónimas en Golang son estructuras temporales sin nombre que se utilizan para fines únicos, mientras que los campos anónimos permiten la incorporación de campos sin nombre.

Cómo usar Runas en Golang

Cómo usar Runas en Golang

¿Qué son las Runas en Golang? ¿Cómo usar Runas en Golang? El artículo te dirá la respuesta.

Cómo usar operadores en Golang

Cómo usar operadores en Golang

Los operadores nos permiten realizar diferentes tipos de operaciones sobre los operandos. En el lenguaje Go, los operadores se pueden clasificar según sus diferentes funciones.

Identificador nulo en Golang

Identificador nulo en Golang

_(guión bajo) en Golang se llama Identificador en blanco. El identificador es un nombre definido por el usuario de los componentes del programa que se utiliza con fines de identificación.

Cómo crear un programa básico en Golang

Cómo crear un programa básico en Golang

¡Hola Mundo! es el primer programa básico en cualquier lenguaje de programación. Puedes escribir este primer programa en Golang siguiendo los pasos a continuación.

Cómo instalar Go en Windows

Cómo instalar Go en Windows

Golang se puede instalar fácilmente en Windows. A continuación se muestra una guía detallada paso a paso para instalar Golang en Windows.

Diferencia entre un televisor normal y un Smart TV

Diferencia entre un televisor normal y un Smart TV

Los televisores inteligentes realmente han conquistado el mundo. Con tantas funciones excelentes y conectividad a Internet, la tecnología ha cambiado la forma en que vemos televisión.

¿Por qué el congelador no tiene luz pero el refrigerador sí?

¿Por qué el congelador no tiene luz pero el refrigerador sí?

Los refrigeradores son electrodomésticos familiares en los hogares. Los refrigeradores suelen tener 2 compartimentos, el compartimento frío es espacioso y tiene una luz que se enciende automáticamente cada vez que el usuario lo abre, mientras que el compartimento congelador es estrecho y no tiene luz.

2 maneras de solucionar la congestión de la red que ralentiza el Wi-Fi

2 maneras de solucionar la congestión de la red que ralentiza el Wi-Fi

Las redes Wi-Fi se ven afectadas por muchos factores más allá de los enrutadores, el ancho de banda y las interferencias, pero existen algunas formas inteligentes de mejorar su red.

Cómo degradar de iOS 17 a iOS 16 sin perder datos usando Tenorshare Reiboot

Cómo degradar de iOS 17 a iOS 16 sin perder datos usando Tenorshare Reiboot

Si quieres volver a iOS 16 estable en tu teléfono, aquí tienes la guía básica para desinstalar iOS 17 y pasar de iOS 17 a 16.

¿Qué le pasa al cuerpo cuando comes yogur todos los días?

¿Qué le pasa al cuerpo cuando comes yogur todos los días?

El yogur es un alimento maravilloso. ¿Es bueno comer yogur todos los días? Si comes yogur todos los días, ¿cómo cambiará tu cuerpo? ¡Descubrámoslo juntos!

¿Qué tipo de arroz es mejor para la salud?

¿Qué tipo de arroz es mejor para la salud?

Este artículo analiza los tipos de arroz más nutritivos y cómo maximizar los beneficios para la salud del arroz que elija.

Cómo despertarse a tiempo por la mañana

Cómo despertarse a tiempo por la mañana

Establecer un horario de sueño y una rutina para la hora de acostarse, cambiar el despertador y ajustar la dieta son algunas de las medidas que pueden ayudarle a dormir mejor y despertarse a tiempo por la mañana.

Consejos para jugar a Rent Please! Simulación de propietario para principiantes

Consejos para jugar a Rent Please! Simulación de propietario para principiantes

¡Alquiler por favor! Landlord Sim es un juego de simulación para dispositivos móviles iOS y Android. Jugarás como propietario de un complejo de apartamentos y comenzarás a alquilar un apartamento con el objetivo de mejorar el interior de tus apartamentos y prepararlos para los inquilinos.

Últimos códigos de defensa de torres para baños y cómo introducirlos

Últimos códigos de defensa de torres para baños y cómo introducirlos

Obtén el código del juego Bathroom Tower Defense de Roblox y canjéalo por emocionantes recompensas. Te ayudarán a mejorar o desbloquear torres con mayor daño.

Estructura, símbolos y principios de funcionamiento de los transformadores

Estructura, símbolos y principios de funcionamiento de los transformadores

Aprendamos la estructura, los símbolos y los principios de funcionamiento de los transformadores de la forma más precisa.

4 maneras en que la IA está mejorando los televisores inteligentes

4 maneras en que la IA está mejorando los televisores inteligentes

Desde una mejor calidad de imagen y sonido hasta control por voz y más, ¡estas funciones impulsadas por IA hacen que los televisores inteligentes sean mucho mejores!

Por qué ChatGPT es mejor que DeepSeek

Por qué ChatGPT es mejor que DeepSeek

Al principio, la gente tenía grandes esperanzas en DeepSeek. Como chatbot de IA comercializado como un fuerte competidor de ChatGPT, promete capacidades y experiencias de chat inteligentes.

Conoce Fireflies.ai: La secretaria con IA gratuita que te ahorra horas de trabajo

Conoce Fireflies.ai: La secretaria con IA gratuita que te ahorra horas de trabajo

Es fácil pasar por alto detalles importantes cuando se anotan otros elementos esenciales, y tratar de tomar notas mientras se chatea puede ser una distracción. Fireflies.ai es la solución.

Cómo criar Ajolote en Minecraft, domesticar Salamandra en Minecraft

Cómo criar Ajolote en Minecraft, domesticar Salamandra en Minecraft

Axolot de Minecraft será un gran asistente para los jugadores cuando trabajen bajo el agua si saben cómo usarlos.

Configuración del juego para PC A Quiet Place: The Road Ahead

Configuración del juego para PC A Quiet Place: The Road Ahead

La configuración de A Quiet Place: The Road Ahead tiene una calificación bastante alta, por lo que deberás tener en cuenta la configuración antes de decidir descargarla.