Golang 如何将字符串传递给函数
在本教程中,我们将学习如何在Golang中将字符串作为参数传递给函数。在编程中,为了使代码更模块化、可用性更高和可读性更强,我们将代码分解为不同的小块,这些小块被称为函数。如果您已经创建了一个由字母组成的字符串,并且希望对字符串执行一些操作,则需要将该字符串作为参数传递给函数。
本教程将通过两个示例来解释这个概念。
- 在第一个示例中,我们将传递字符串并打印字符串中出现的所有元音字母。在英语字母表中,A、E、I、O和U是元音字母。
-
在第二个示例中,我们将转换小写字符串为大写,并在传递字符串的函数中打印出来。例如,我们有一个字符串ball,其中所有的字母都是小写字母,这个字符串的大写字母将是BALL。为了完成这个任务,我们将使用ASCII值的概念。ASCII值只是一个为所有字母、数字和特殊字符分配的唯一数字。
语法
声明一个带有字符串参数的函数的语法如下。
func functionName(stringVariableName string) returnType {
// logic
}
步骤
- 步骤1:
var stringVariable string
− 声明字符串变量。 -
步骤2:
string = "tutorialpoints"
− 初始化字符串。 -
步骤3:
printInVowels(stringVariable)
− 调用函数,并将字符串作为参数传递。for i := 0; i < len(stringVariable); i++ { }
− 在字符串上运行for循环。-
if stringVariable[i] == ‘a’ || stringVariable[i] == ‘e’ || stringVariable[i] == ‘i’ || stringVariable[i] == ‘o’ || stringVariable[i] == ‘u’ || stringVariable[i] == ‘A’ || stringVariable[i] == ‘E’ || stringVariable[i] == ‘I’ || stringVariable[i] == ‘O’ || stringVariable[i] == ‘U’ {}
− 比较当前字符与元音字母。
-
步骤4: 在调用的函数中打印字符串中的所有元音字母。
示例
在这个示例中,我们将创建一个字符串变量,并通过将字符串传递给一个 printVowels() 函数来打印所有的元音字母。
package main
import (
// fmt package provides the function to print anything
"fmt"
)
// stringVariable is the argument in this function
func printVowels(stringVariable string) {
fmt.Println("Printing all the vowels present in the string.")
// running for loop over the string
for i := 0; i < len(stringVariable); i++ {
// using the if block we are checking that the current character is
// vowel or not by comparing with all the vowels character
if stringVariable[i] == 'a' || stringVariable[i] == 'e' || stringVariable[i] == 'i' || stringVariable[i] == 'o' || stringVariable[i] == 'u' ||
stringVariable[i] == 'A' || stringVariable[i] == 'E' || stringVariable[i] == 'I' || stringVariable[i] == 'O' || stringVariable[i] == 'U' {
fmt.Printf("The character %c at index %d is a vowel.\n ", stringVariable[i], i)
}
}
fmt.Println()
}
func main() {
// declaring the string
var stringVariable string
// initializing the string
stringVariable = "tutorialpoints"
fmt.Println("Golang program to pass a string in the argument.")
// passing argument in the function
printVowels(stringVariable)
}
输出
Golang program to pass a string in the argument.
Printing all the vowels present in the string.
The character u at index 1 is a vowel.
The character o at index 3 is a vowel.
The character i at index 5 is a vowel.
The character a at index 6 is a vowel.
The character o at index 9 is a vowel.
The character i at index 10 is a vowel.
步骤
- 步骤1:var stringVariable string – 声明字符串。
-
步骤2:string = “tutorialpoints” – 初始化字符串。
-
步骤3:upperCase(stringVariable) – 调用函数,并将字符串作为参数传递给函数。
- stringVariable = strings.ToUpper(stringVariable) – 调用strings包中的ToUpper()函数,将字符串转换为大写。
- 步骤4: 打印将字符串的所有字符转换为大写后的字符串。
示例
在这个示例中,我们将通过将字符串传递给一个函数来将一个字符串从小写转换为大写。
package main
import (
// fmt package provides the function to print anything
"fmt"
// strings package provides function related to string
"strings"
)
// stringVariable is the argument in this function
func upperCase(stringVariable string) {
fmt.Println("Converting lower case string to upper case.")
// converting lower case to uppercase by calling ToUpper()
// function from stings package
stringVariable = strings.ToUpper(stringVariable)
fmt.Println(stringVariable)
}
func main() {
// declaring the string
var stringVariable string
// initializing the string
stringVariable = "tutorialpoints"
fmt.Println("Golang program to pass a string in the argument.")
// passing argument in the function
upperCase(stringVariable)
}
输出
Golang program to pass a string in the argument.
Converting lower case string to upper case.
TUTORIALPOINTS
结论
这是传递字符串给函数的两个示例,第一个示例中我们打印了字符串中所有的元音字母。在第二个示例中,我们传递了一个字符串并将其转换为大写字母。要了解更多关于Go的内容,你可以探索这些教程。