Golang Program that uses func as Local Variable
Function performs a specific task, section of code that defined once can be reused. Functions are used to make your code easier to understand by breaking it into small and understandable tasks.Functions are also known as method, sub-routine, or procedure.
General form of a function definition in Go programming language is given below-
func function_name( [parameter list] ) [return_types]
{
body of the function
}
A function definition in Go programming language, here define some parts of a function-
- Func: Starts the declaration of a function.
- Function Name: Function names include parentheses and may include parameters.It is the actual name of the function.
- Parameters: A parameter is a named entity in a function definition, specifying an argument that the function can accept. Parameters are optional; that is, a function may contain no parameters.
- Return Type: The return data type must be specified as well.The return_types is the list of data types of the values the function returns.
- Function Body: It contains a collection of statements that define what the function does.
To call a function, it needs to pass the required parameters along with its function name. This function takes two parameters number1 and number2 and returns the maximum value between the two?
Example
package main
import "fmt"
func main() {
var x int = 150
var y int = 360
var ret int
ret = max(x, y)
fmt.Printf( "Maximum value is : %d\n" , ret)
}
func max(number1, number2 int ) int {
var result int
if number1 > number2 {
result = number1
} else {
result = number2
}
return result
}
|
Output:
Maximum value is : 360
We can pass the func variable as an argument to a method which requires a func argument as shown in the below example
package main
import (
"fmt"
"strings"
)
func main() {
f1 := func(f rune) bool {
return f == '_' ||
f == ' '
}
val := "geeks1 geeks2"
finalresult := strings.IndexFunc(val, f1)
fmt.Println(finalresult)
val = "geeks1_geeks2"
finalresult = strings.IndexFunc(val, f1)
fmt.Println(finalresult)
}
|
Output:
6
6
Last Updated :
26 May, 2020
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...