Go 言語では、配列は基本的なデータ型です。その基礎となる実装は固定長の連続メモリ領域です。配列は次のように定義されます:
var arr [5]int // 定义一个长度为5的int类型的数组arr
実際の開発では、変換する必要がある場合があります。配列を変数パラメータに渡します。つまり、配列内の各要素を関数に渡します。この記事では、配列を可変引数に変換する方法を学びます。
Go 言語では、...
演算子を使用して配列を変数パラメーターに変換できます。例は次のとおりです。 :
package main import "fmt" func test(args ...int) { fmt.Println(args) } func main() { arr := [5]int{1, 2, 3, 4, 5} test(arr[:]...) // 将数组arr转换为变参 }
結果の出力は次のとおりです:
[1 2 3 4 5]
上記のコードでは、[:]## をスライスすることにより、配列
arr を変数パラメーターに変換します。 #、関数
test に渡されます。関数
test では、変数パラメーターを走査することで配列内の各要素を取得できます。
... 演算子を使用して配列を変数パラメーターに変換する場合は、次の点に注意する必要があることに注意してください。
演算子は、配列の直後に
[:] の後に置く必要があります。
演算子を使用する必要があります。
package main import "fmt" func sum(nums ...int) { total := 0 for _, num := range nums { total += num } fmt.Println(total) } func main() { arr := [5]int{1, 2, 3, 4, 5} sum(arr[:]...) }
sum 関数を定義します。
main 関数では、長さ 5 の配列
arr を定義し、それを変数パラメーターに変換して、
sum 関数に渡します。この関数では、配列内の各要素は変数パラメーターを走査することによって取得され、それらは累積および合計されます。
append 関数を使用して変数パラメーターの要素を新しい配列に追加します。例:
package main import "fmt" func main() { arr1 := [5]int{1, 2, 3, 4, 5} arr2 := []int{6, 7, 8, 9, 10} arr2 = append(arr2, arr1[:]...) // 将数组arr1中的元素添加到切片arr2中 fmt.Println(arr2) }
arr1 と
arr2 を定義し、配列
arr1 を変数パラメーターに変換します。
append 関数を使用して、変数パラメーターの要素を配列
arr2 の末尾に追加します。
append 関数を使用してスライスまたは配列を追加する場合、スライスまたは配列の最後で
.... 演算子を使用して変数を展開する必要があることに注意してください。パラメーター。
... 演算子を使用して配列を変数パラメーターに変換する場合は、エラーを避けるために構文ルールと詳細に注意する必要があることに注意してください。
以上がgolang 配列変換パラメータの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。