ホームページ >バックエンド開発 >Golang >Go アレイをスライスに変換するにはどうすればよいですか?

Go アレイをスライスに変換するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-16 22:12:14546ブラウズ

How Can I Convert a Go Array to a Slice?

Go で配列をスライスに変換する

Go で配列とスライスを操作する場合、2 つのデータ型の間で変換する必要がある場合があります。 。これは、異なるタイプの入力を期待する関数間でデータを受け渡す場合に便利です。

バイト配列を返す関数があるとします。

func Foo() [32]byte { ... }

その結果を渡す必要がある場合があります。バイトのスライスを期待する別の関数へ:

func Bar(b []byte) { ... }

単に Bar(d) を呼び出そうとした場合、d はによって返される配列です。おっと、型変換エラーが発生します。これは、Go では配列とスライスが異なる型であるためです。

配列をスライスに変換するには、[:] 構文を使用できます。これにより、基になる配列データを参照するスライスが作成されます。例:

d := Foo()
Bar(d[:])

これは、配列 d から関数 Bar にデータのスライスを渡します。スライスは配列と同じ基礎となるバッファを参照するため、データのコピーは発生しません。

以上がGo アレイをスライスに変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。