如何在Go语言中向函数传递字符串?


在本教程中,我们将学习如何在Go语言中将字符串作为参数传递给函数。在编程中,为了使代码更模块化、更易用和更易读,我们将代码分解成不同的较小块,这些块被称为函数。如果您创建了一个字母字符串,并且想要对该字符串执行某些操作,则需要通过将其作为参数传递来将该字符串传递给函数。

本教程将通过两个例子来解释这个概念。

  • 在第一个例子中,我们将传递字符串并打印字符串中存在的所有元音。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的信息,您可以浏览这些教程

更新于:2023年7月10日

1K+ 次浏览

启动您的职业生涯

通过完成课程获得认证

开始
广告