ホームページ > バックエンド開発 > Golang > golang 配列変換パラメータ

golang 配列変換パラメータ

WBOY
リリース: 2023-05-11 10:41:36
オリジナル
646 人が閲覧しました

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 では、変数パラメーターを走査することで配列内の各要素を取得できます。 ... 演算子を使用して配列を変数パラメーターに変換する場合は、次の点に注意する必要があることに注意してください。

    配列は次のとおりである必要があります。スライスなどの他のタイプではなく、通常の配列。
  1. ... 演算子は、配列の直後に [:] の後に置く必要があります。
  2. 渡すときは
  3. ... 演算子を使用する必要があります。
配列変換パラメータの適用シナリオ

実際の開発において、配列を変数パラメータに変換する適用シナリオは非常に多岐にわたりますが、以下では一般的な 2 つの適用シナリオを紹介します。

1. 関数のパラメータとして配列を使用する

関数を呼び出すとき、関数のパラメータとして配列を変数パラメータに直接渡すことができます。例:

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 関数に渡します。この関数では、配列内の各要素は変数パラメーターを走査することによって取得され、それらは累積および合計されます。

2. 配列要素を別の配列にコピーする

場合によっては、配列内の要素のすべてまたは一部を別の配列にコピーする必要があります。この場合、元の配列は次のように変換できます。変数パラメーターを選択し、

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)
}
ログイン後にコピー
上記のコードでは、2 つの配列

arr1arr2 を定義し、配列 arr1 を変数パラメーターに変換します。 append 関数を使用して、変数パラメーターの要素を配列 arr2 の末尾に追加します。 append 関数を使用してスライスまたは配列を追加する場合、スライスまたは配列の最後で .... 演算子を使用して変数を展開する必要があることに注意してください。パラメーター。

概要

この記事の学習を通じて、配列を変数パラメーターに変換する方法を学び、実際の開発で配列を変数パラメーターに変換するための 2 つの一般的なアプリケーション シナリオを紹介しました。

... 演算子を使用して配列を変数パラメーターに変換する場合は、エラーを避けるために構文ルールと詳細に注意する必要があることに注意してください。

以上がgolang 配列変換パラメータの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート