如何在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+ 次瀏覽

啟動您的職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.