English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial básico de Golang

Sentencias de control en Golang

Funciones y métodos en Golang

Estructuras en Golang

Cortesía y arrays en Golang

Cadenas (String) en Golang

Punteros en Golang

Interfaces en Golang

Concurrencia en Golang

Excepciones (Error) en Golang

Otras cosas de Golang

Función de parámetros variables en el lenguaje Go

Las funciones llamadas con diferentes cantidades de parámetros se denominan funciones con parámetros variables. En otras palabras, permite que el usuario transmita cero o más parámetros en una función variable.fmt.PrintfEs un ejemplo de función con parámetros variables, que necesita un parámetro fijo al comenzar y luego puede aceptar cualquier cantidad de parámetros.

Asunto importante:

  • En la declaración de la función con parámetros variables, el tipo del último parámetro está precedido por un punto y coma, es decir, ()。 Esto indica que la función puede llamar a una cantidad arbitraria de parámetros de este tipo

    sintaxis:

    función function_name(para1, para2...type)type{
        // código...
    }
  • función function ...typedeEl comportamiento es similar al de un slice (slice). Por ejemplo, supongamos que tenemos una firma de función, es decir, add(b...int)int, ahora es un parámetro de tipo []int.

  • También se pueden pasar slices existentes a una función de parámetros variables. Para esto, pasamos una parte completa del array a la función, como se muestra a continuación.Ejemplo2Como se muestra.

  • Cuando no se pasan parámetros a una función de parámetros variables, el valor por defecto interno es nil.

  • Las funciones de parámetros variables se utilizan generalmente para la formateo de cadenas.

  • También se pueden pasar múltiples slices a una función de parámetros variables.

  • No se puede usar un parámetro variable como valor de retorno, pero se puede devolver como un slice.

Ejemplo de demostración de cero y múltiples parámetros:

paquete main
import (
    "fmt"
    "strings"
")
//Función de parámetros variables para unir cadenas
func joinstr(element ...string) string {
    return strings.Join(element, "");-")
}
func main() {
    //Cero parámetros
    fmt.Println(joinstr())
    //Múltiples parámetros
    fmt.Println(joinstr("GEEK", "GFG"))
    fmt.Println(joinstr("Geeks", "for", "Geeks"))
    fmt.Println(joinstr("G", "E", "E", "k", "S"))
}

Salida:

GEEK-GFG
Geeks-for-Geeks
G-E-E-k-S

Ejemplo2, unir cadenas con parámetros variables, pasar un slice a una función de parámetros variables:

paquete main 
  
import(" 
    "fmt"
    "strings"
") 
  
//Función de parámetros variables para unir cadenas
func joinstr(element...string)string{ 
    return strings.Join(element, "");-") 
} 
  
func main() { 
     
   //Passar un slice a una función de parámetros variables
   element:= []string{"geeks", "FOR", "geeks"} 
   fmt.Println(joinstr(element...)) 
}

Salida:

geeks-FOR-geeks

Cuando usamos una función de parámetros variables:

  • Al tener que pasar un slice a una función, se utiliza una función de parámetros variables.

  • Cuando no sabemos la cantidad de parámetros, se utiliza una función de parámetros variables.

  • Al usar funciones de parámetros variables en un programa, se puede aumentar la legibilidad del programa.