Open In App

Golang Program that uses func as Local Variable

Improve
Improve
Like Article
Like
Save
Share
Report

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() {
  
    // local variable definition
    var x int = 150
    var y int = 360
    var ret int
  
    // calling a function to get max value
    // and storing its value in a variable
    ret = max(x, y)
  
    fmt.Printf("Maximum value is : %d\n", ret)
}
  
// function returning the max between two numbers
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




// Golang program that uses func
// as a local variable
package main
  
import (
    "fmt"
    "strings"
)
  
func main() {
  
    // assigning function f to a variable f1
    f1 := func(f rune) bool {
  
        // Return true if underscore
        // or space rune.
        return f == '_' ||
            f == ' '
    }
  
    val := "geeks1 geeks2"
  
    // Pass func object to IndexFunc method.
    // Here f1 is a function argument
    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
Previous
Next
Share your thoughts in the comments
Similar Reads