Funciones volátiles en Golang

Las funciones variádicas en Go le permiten pasar una cantidad variable de argumentos a una función. Esta función es útil cuando no sabes de antemano cuántos argumentos pasarás. Una función variádica de Golang  acepta múltiples argumentos del mismo tipo y puede llamarse con cualquier número de argumentos, incluido ninguno.

Funciones volátiles en Golang

package main
import "fmt"

// Hàm Variadic tính tổng
func sum(nums ...int) int {
    total := 0
    for _, n := range nums {
        total += n
    }
    return total
}

func main() {
    fmt.Println("Sum of 1, 2, 3:", sum(1, 2, 3))
    fmt.Println("Sum of 4, 5:", sum(4, 5))
    fmt.Println("Sum of no numbers:", sum())
}

Resultado:

Sum of 1, 2, 3: 6
Sum of 4, 5: 9
Sum of no numbers: 0

Sintaxis:

func functionName(parameters ...Type) ReturnType {
    // Code
}

En la sintaxis anterior:

  • parameters ...TypeIndica que la función puede aceptar un número variable de argumentos de tipo Tipo.
  • Puedes acceder a los argumentos de una función como una porción.

Cómo usar funciones inciertas en Golang

Uso de funciones variádicas

Al definir una función variádica, se especifica el tipo de argumento seguido de puntos suspensivos (...) como en el ejemplo anterior. Dentro de la función, estos argumentos pueden considerarse como una porción.

Llamar a una función variádica

Puede llamar a una función variádica con cualquier número de argumentos, incluido cero. Esta función trata los argumentos como una porción.

Por ejemplo:

package main
import "fmt"

func sum(nums ...int) int {
    total := 0
    for _, n := range nums {
        total += n
    }
    return total
}

func main() {
    fmt.Println("Sum of 1, 2, 3:", sum(1, 2, 3))
    fmt.Println("Sum of 4, 5:", sum(4, 5))
    fmt.Println("Sum of no numbers:", sum())
}

Resultado:

Sum of 1, 2, 3: 6
Sum of 4, 5: 9
Sum of no numbers: 0

Función variádica con diferentes parámetros

También puedes combinar parámetros variádicos con parámetros regulares en una función. Los parámetros variádicos siempre deben ser el último parámetro.

Por ejemplo:

package main
import "fmt"

// Hàm Variadic tính tổng
func sum(nums ...int) int {
    total := 0
    for _, n := range nums {
        total += n
    }
    return total
}

// Hàm với tham số thông thường và variadic 
func greet(prefix string, nums ...int) {
    fmt.Println(prefix)
    for _, n := range nums {
        fmt.Println("Number:", n)
    }
}
func main() {
    greet("Sum of numbers:", 1, 2, 3)
    greet("Another sum:", 4, 5)
    greet("No numbers sum:")
}

Resultado:

Sum of numbers:
Number: 1
Number: 2
Number: 3
Another sum:
Number: 4
Number: 5
No numbers sum:

Limitaciones de las funciones variádicas

  • Las funciones variádicas solo pueden tener un parámetro variádico y debe ser el último parámetro.
  • No es posible tener varios parámetros variádicos en una única definición de función.

Dejar un comentario

Recogida de muebles y enseres en Málaga: cómo solicitarla

Recogida de muebles y enseres en Málaga: cómo solicitarla

Consulte el día y la hora de recogida de muebles en Málaga, dónde dejarlos y qué hacer con electrodomésticos o con el vaciado de una vivienda.

Recogida de muebles y enseres en A Coruña: cómo solicitarla

Recogida de muebles y enseres en A Coruña: cómo solicitarla

Solicita la recogida de muebles y enseres en A Coruña mediante el 010: teléfonos, horario, pasos, preparación y errores que debes evitar.

Cómo tirar una lavadora en Barcelona: opciones legales, costes y qué conviene en cada caso

Cómo tirar una lavadora en Barcelona: opciones legales, costes y qué conviene en cada caso

Descubre cómo deshacerte de una lavadora en Barcelona: Punto Verde de Zona, retirada al comprar una nueva, reutilización y transporte seguro.

Cómo tirar una batería externa hinchada en Almería: pasos seguros

Cómo tirar una batería externa hinchada en Almería: pasos seguros

Descubre cómo aislar, transportar y entregar una batería externa hinchada en Almería sin tirarla a la basura ni exponerte a un incendio.

Cómo tirar una bicicleta en Pamplona: reutilizar, recoger o reciclar según su estado

Cómo tirar una bicicleta en Pamplona: reutilizar, recoger o reciclar según su estado

Opciones para deshacerse de una bicicleta en Pamplona: donación, reparación, recogida de voluminosos y gestión de piezas, con criterios para elegir.

Cómo tirar una bicicleta en Badalona: reutilización, deixalleria y recogida

Cómo tirar una bicicleta en Badalona: reutilización, deixalleria y recogida

Descubre cómo retirar una bicicleta en Badalona según su estado: reutilización, deixalleria, recogida de muebles y precauciones para modelos eléctricos.

Cómo tirar un aire acondicionado en L’Hospitalet de Llobregat: desmontaje, recogida y punto limpio

Cómo tirar un aire acondicionado en L’Hospitalet de Llobregat: desmontaje, recogida y punto limpio

Guía para desechar un aire acondicionado en L’Hospitalet: cuándo llamar a un técnico, cómo usar la deixalleria, la recogida municipal y la devolución al comprar otro equipo.

Cómo tirar una batería externa hinchada en Barcelona: guía segura paso a paso

Cómo tirar una batería externa hinchada en Barcelona: guía segura paso a paso

Descubre cómo actuar con una batería externa hinchada en Barcelona: qué evitar, cómo aislarla y cómo confirmar una deixalleria adecuada.

Cómo tirar un televisor en Bilbao: opciones correctas y pasos para reciclarlo

Cómo tirar un televisor en Bilbao: opciones correctas y pasos para reciclarlo

Guía práctica para deshacerse de un televisor en Bilbao: Bilbogarbi, entrega en tienda al comprar uno nuevo, preparación, transporte y errores que conviene evitar.

Cómo tirar una bombona de gas en Cartagena: devolución y opciones seguras

Cómo tirar una bombona de gas en Cartagena: devolución y opciones seguras

¿No sabe dónde tirar una bombona de butano o propano en Cartagena? Consulte cómo devolverla al distribuidor y qué hacer si está vacía, llena o dañada.