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

Dejar un comentario

Cómo tirar tubos fluorescentes en L’Hospitalet de Llobregat: dónde llevarlos y qué hacer en 2026

Cómo tirar tubos fluorescentes en L’Hospitalet de Llobregat: dónde llevarlos y qué hacer en 2026

Guía 2026 para desechar tubos fluorescentes en L’Hospitalet: punto limpio, límites para particulares, entrega en tiendas y transporte seguro.

Cómo tirar aceite de cocina usado en Barcelona: guía práctica

Cómo tirar aceite de cocina usado en Barcelona: guía práctica

Aprende cómo guardar y llevar aceite de cocina usado a un Punto Verde de Barcelona, qué errores evitar y cómo comprobar el resultado.

Cómo tirar un ordenador en Madrid: opciones seguras para reciclarlo

Cómo tirar un ordenador en Madrid: opciones seguras para reciclarlo

Guía práctica para desechar un ordenador en Madrid: borrado de datos, puntos limpios fijos, entrega en tiendas y límites de los puntos móviles.

Dónde tirar un teléfono móvil: opciones, datos y errores que conviene evitar

Dónde tirar un teléfono móvil: opciones, datos y errores que conviene evitar

Descubre dónde tirar un teléfono móvil en España, cómo borrar tus datos, retirar SIM y microSD y elegir entre punto limpio, tienda o gestor autorizado.

Empadronamiento en A Coruña: requisitos y documentos para darse de alta

Empadronamiento en A Coruña: requisitos y documentos para darse de alta

Consulta qué documentos necesitas para empadronarte en A Coruña: identificación, prueba de vivienda, autorizaciones y requisitos para menores.

Cómo tirar un televisor en Pamplona: recogida, entrega y qué no hacer

Cómo tirar un televisor en Pamplona: recogida, entrega y qué no hacer

Guía práctica para deshacerse de un televisor en Pamplona: recogida de voluminosos, devolución al comprar otro, preparación y errores que evitar.

Cómo tirar un edredón en Córdoba: opciones correctas según su estado

Cómo tirar un edredón en Córdoba: opciones correctas según su estado

Descubre cómo deshacerte de un edredón en Córdoba: reutilización, contenedores textiles, ecoparques y recogida de SADECO.

Cómo tirar un edredón en Sevilla: contenedor textil, punto limpio y alternativas

Cómo tirar un edredón en Sevilla: contenedor textil, punto limpio y alternativas

En Sevilla, un edredón usado va al circuito textil si está seco y cabe en el contenedor. Si es voluminoso, consulta un punto limpio de LIPASAM antes de llevarlo.

Cómo tirar un microondas en Jerez de la Frontera: opciones y pasos seguros

Cómo tirar un microondas en Jerez de la Frontera: opciones y pasos seguros

Descubre cómo tirar un microondas en Jerez de la Frontera: Punto Limpio Sur, Punto Limpio Móvil 2026, preparación, transporte y señales de una entrega correcta.

Cómo tirar un aerosol en Cartagena: contenedor amarillo, punto limpio y casos especiales

Cómo tirar un aerosol en Cartagena: contenedor amarillo, punto limpio y casos especiales

Guía actualizada para desechar aerosoles en Cartagena: cuándo usar el contenedor amarillo, cuándo llevarlos al punto limpio y qué hacer con envases de medicamentos.