亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

Go 語言中的變參

在開發過程中,很有可能會遇到不確定傳入參數數量的問題。比如答題系統開發時,可能會遇到多選題,這里面就無法確定傳入參數的數量。此時就需要一個變參傳遞的方案,在 Go 語言中,使用...來接收或者傳遞變。

1. 使用…來接收變參

在函數的參數類型前加上...就可以用于接收不定長度的該類型的變參,如果連類型也無法確定,則使用...interface{}。變參類型的參數在使用時是一個變參類型的切片。

代碼示例:

package main

import "fmt"

func main() {
    variableParameter(1, 2, 3, 4, 5)
}

func variableParameter(i ...int) {
    fmt.Println("輸出變參:", i)
}
  • 第 9 行:定義變參函數,其變參類型為 int。
  • 第 6 行:傳入 5 個參數。

執行結果:

image.png

2. 使用…來傳遞變參

當你傳遞的參數是一個切片時,此時你無法確定其長度,你就可以用...來傳遞其全部的值到變參函數中。

代碼示例:

package main

import "fmt"

func main() {
    i := []int{1, 2, 3, 4, 5}
    variableParameter(i...)//傳遞i中的所有值
}

func variableParameter(i ...int) {
    fmt.Println("輸出變參:", i)
}

執行結果:

image.png

3. 小結

本文主要講解了 Go 語言中如何使用變參。變參在函數中的使用是可以作為一個切片來使用的,而當一個切片想要傳值給變參時,只需要在切片后加上...。