Introducción
En Go, una función que puede tomar un número variable de argumentos se llama función variádica. Esta práctica te ayudará a comprender cómo utilizar las funciones variádicas en Go.
This tutorial is from open-source community. Access the source code
En Go, una función que puede tomar un número variable de argumentos se llama función variádica. Esta práctica te ayudará a comprender cómo utilizar las funciones variádicas en Go.
En esta práctica, debes implementar una función llamada max que tome un número arbitrario de enteros como argumentos y devuelva el valor máximo.
max debe tomar un número arbitrario de enteros como argumentos.max debe devolver el valor máximo de los enteros pasados como argumentos.$ go run variadic-functions.go
[1 2] 3
[1 2 3] 6
[1 2 3 4] 10
## Otro aspecto clave de las funciones en Go es su capacidad
## para formar closures, que veremos a continuación.
A continuación está el código completo:
// [_Funciones variádicas_](https://en.wikipedia.org/wiki/Variadic_function)
// se pueden llamar con cualquier número de argumentos finales.
// Por ejemplo, `fmt.Println` es una función variádica común.
package main
import "fmt"
// Aquí hay una función que tomará un número arbitrario
// de `int`s como argumentos.
func sum(nums...int) {
fmt.Print(nums, " ")
total := 0
// Dentro de la función, el tipo de `nums` es
// equivalente a `[]int`. Podemos llamar a `len(nums)`,
// iterar sobre él con `range`, etc.
for _, num := range nums {
total += num
}
fmt.Println(total)
}
func main() {
// Las funciones variádicas se pueden llamar de la manera
// habitual con argumentos individuales.
sum(1, 2)
sum(1, 2, 3)
// Si ya tienes múltiples argumentos en un slice,
// aplícalos a una función variádica usando
// `func(slice...)` de esta manera.
nums := []int{1, 2, 3, 4}
sum(nums...)
}
En esta práctica, aprendiste cómo utilizar las funciones variádicas en Go. Implementaste una función llamada max que toma un número arbitrario de enteros como argumentos y devuelve el valor máximo.