Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Valores Devueltos de las Funciones | Funciones
Introducción a Golang

bookValores Devueltos de las Funciones

Poder pasar datos a las funciones es valioso, pero es igualmente ventajoso recuperar datos de las funciones. Aquí es donde la palabra clave return resulta esencial.

La palabra clave return permite a las funciones enviar datos de vuelta al punto del código donde fueron invocadas. Esta es la sintaxis de una función con una sentencia return:

``ir func funcionNombre(param_1 tipo_dato, param_2 tipo_dato, ...) return_tipo_dato { // Código

  return tipo_dato

}


En `data_to_be_returned` se especifica una expresión o un valor. El `returned_datatype` representa el tipo de datos previsto para el valor que será devuelto. Esto será más claro a través de un ejemplo.

El siguiente programa ilustra la implementación de una sentencia return mediante una función que calcula y devuelve tanto la suma como el producto de dos argumentos enteros dados:

index.go

index.go

copy
1234567891011121314
package main import "fmt" func myFunc(value_1 int, value_2 int) int { var sum int = value_1 + value_2 var prod int = value_1 * value_2 var result int = sum + prod return result } func main() { fmt.Println(myFunc(5, 7)) }

Tenga en cuenta que dentro de la función Println, tenemos myFunc(5, 7), y el programa anterior produce la salida 47, que resulta de los cálculos realizados por la función myFunc(). Esto demuestra que la sentencia return devuelve datos específicos al lugar donde se invocó la función. Además, podemos almacenar los datos devueltos en una variable:

index.go

index.go

copy
12
var returnedValue int = myFunc(5, 7) fmt.Println(returnedValue) // Outputs '47'

Nota

Una función no requiere parámetros para incluir una sentencia return.

Una función no puede contener ningún código después de una sentencia return, y típicamente, Go no permite múltiples sentencias return:

index.go

index.go

copy
1234567891011
// Function exits after the first return statement it encounters func exampleOne() int { return 1 return 2 // Will be ignored } // There cannot be any code after a return statement func exampleTwo() int { return 1 fmt.Println() // Error here }

No obstante, es posible emplear la sentencia return dentro de estructuras condicionales para devolver valores de forma selectiva:

index.go

index.go

copy
123456789101112131415
package main import "fmt" func myFunc() string { if(1 > 2) { return "1 is greater than 2" } else { return "2 is greater than 1" } } func main() { fmt.Println(myFunc()) }
question mark

¿Cuál será la salida del siguiente programa?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 4. Capítulo 4

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Awesome!

Completion rate improved to 1.96

bookValores Devueltos de las Funciones

Desliza para mostrar el menú

Poder pasar datos a las funciones es valioso, pero es igualmente ventajoso recuperar datos de las funciones. Aquí es donde la palabra clave return resulta esencial.

La palabra clave return permite a las funciones enviar datos de vuelta al punto del código donde fueron invocadas. Esta es la sintaxis de una función con una sentencia return:

``ir func funcionNombre(param_1 tipo_dato, param_2 tipo_dato, ...) return_tipo_dato { // Código

  return tipo_dato

}


En `data_to_be_returned` se especifica una expresión o un valor. El `returned_datatype` representa el tipo de datos previsto para el valor que será devuelto. Esto será más claro a través de un ejemplo.

El siguiente programa ilustra la implementación de una sentencia return mediante una función que calcula y devuelve tanto la suma como el producto de dos argumentos enteros dados:

index.go

index.go

copy
1234567891011121314
package main import "fmt" func myFunc(value_1 int, value_2 int) int { var sum int = value_1 + value_2 var prod int = value_1 * value_2 var result int = sum + prod return result } func main() { fmt.Println(myFunc(5, 7)) }

Tenga en cuenta que dentro de la función Println, tenemos myFunc(5, 7), y el programa anterior produce la salida 47, que resulta de los cálculos realizados por la función myFunc(). Esto demuestra que la sentencia return devuelve datos específicos al lugar donde se invocó la función. Además, podemos almacenar los datos devueltos en una variable:

index.go

index.go

copy
12
var returnedValue int = myFunc(5, 7) fmt.Println(returnedValue) // Outputs '47'

Nota

Una función no requiere parámetros para incluir una sentencia return.

Una función no puede contener ningún código después de una sentencia return, y típicamente, Go no permite múltiples sentencias return:

index.go

index.go

copy
1234567891011
// Function exits after the first return statement it encounters func exampleOne() int { return 1 return 2 // Will be ignored } // There cannot be any code after a return statement func exampleTwo() int { return 1 fmt.Println() // Error here }

No obstante, es posible emplear la sentencia return dentro de estructuras condicionales para devolver valores de forma selectiva:

index.go

index.go

copy
123456789101112131415
package main import "fmt" func myFunc() string { if(1 > 2) { return "1 is greater than 2" } else { return "2 is greater than 1" } } func main() { fmt.Println(myFunc()) }
question mark

¿Cuál será la salida del siguiente programa?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 4. Capítulo 4
some-alt