如何在Golang中创建一个没有参数但返回一个值的函数
本教程将教我们如何创建一个没有参数并有返回值的函数。本教程包括一个关于函数的要点,以及Golang中无参数和有返回类型的函数的语法,最后我们将看到两个不同的无参数和有返回类型的函数的例子。在这两个例子中,我们将创建两个函数,在调用时返回一个字符串。
没有参数且有返回类型的函数。
语法
现在我们将看到无参数和有返回类型的函数的语法和解释。
func functionName( ) (returnType1, returnType2, …) {
return returnValue1, returnValue2, …
}
解释
- func是Golang中的一个关键字,它告诉编译器一个函数已经被定义。
-
就在函数的旁边,我们写上必须以字母开头的函数的名称。
-
现在我们将写出空的曲线大括号(),因为我们不希望该函数带有参数。
-
为了提到返回类型,我们将在参数声明之后用单独的曲线大括号()来写它们。
-
在大括号之间,我们可以写出函数的逻辑。
-
一旦整个逻辑编写完成,我们将使用return关键字来返回所有我们想要返回的值。
算法
-
第1步 – 启动main()函数。
-
第2步 – 调用不带参数和带返回值的函数,并将其值存储在各自的变量中。
-
第3步 – 声明函数,在函数主体中写出逻辑,最后返回值。
-
第4步 – 对函数返回的值进行必要的操作。
示例 1
在这个例子中,我们要创建两个函数FirstSmall()和SecondSmall(),分别返回第一个数字小或第二个数字小时被调用的字符串。
package main
import (
// fmt package provides the function to print anything
"fmt"
)
func FirstSmall() string {
return "First number is smaller than the second."
}
func SecondSmall() string {
return "Second number is smaller than the first."
}
func main() {
// declaring the variables
var firstNumber, secondNumber int
// initializing the variable
firstNumber = 10
secondNumber = 8
fmt.Println("Golang program to learn how to create a function without argument but with return value.")
fmt.Println("Comparing the numbers and printing the message by calling a function.")
if firstNumber < secondNumber {
fmt.Println(FirstSmall())
} else {
fmt.Println(SecondSmall())
}
}
输出
Golang program to learn how to create a function without argument but with return value.
Comparing the numbers and printing the message by calling a function.
Second number is smaller than the first.
示例 2
在这个例子中,我们要创建两个函数evenNumber()和oddNumber(),分别返回数字为偶数或数字为奇数时被调用的字符串。
package main
import (
// fmt package provides the function to print anything
"fmt"
)
func evenNumber() string {
return "Number is even."
}
func oddNumber() string {
return "Number is odd."
}
func main() {
// declaring and initializing the array
numberArray := [5]int{32, 45, 67, 3, 88}
fmt.Println("Golang program to learn how to create a function without argument but with return value.")
fmt.Println("Checking the array element is odd or even.")
// running for loop on the array
for i := 0; i < 5; i++ {
// checking the number at index i is odd or even
if numberArray[i]%2 == 0 {
fmt.Println(numberArray[i], evenNumber())
} else {
fmt.Println(numberArray[i], oddNumber())
}
}
}
输出
Golang program to learn how to create a function without argument but with return value.
Checking the array element is odd or even.
32 Number is even.
45 Number is odd.
67 Number is odd.
3 Number is odd.
88 Number is even.
结论
这就是两个没有参数和有返回值的函数的例子。这些类型的函数的主要使用情况是,如果你想多次执行一些相同类型的操作,并返回相同的值,那么我们可以创建一个没有参数和有返回值的函数。要学习更多关于Golang的知识,你可以探索这些教程。