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.
结论
以上是两个没有参数和有返回值的函数的例子。这些类型的函数的主要使用情况是,如果你想多次执行相同类型的操作并返回相同的值,那么我们可以创建一个没有参数和返回值的函数。
极客教程