golangの配列変換

PHPz
リリース: 2023-05-16 10:17:08
オリジナル
748 人が閲覧しました

Golang は現在非常に人気のあるプログラミング言語であり、配列はその重要なデータ構造の 1 つです。配列は Golang の基本的なデータ型です。同じ型の要素のセットで構成される順序付けられたコレクションです。配列には複数の要素を格納できます。

開発プロセス中、配列の変換が必要になることがよくあります。この記事では、配列間の変換、配列とスライスの変換、配列と文字列の変換など、Golang の配列変換に関する関連知識を紹介し、例を通して配列変換を実行する方法を示します。

1. 配列間の変換

配列間の変換とは、ある配列データ型を別の配列データ型に変換するプロセスを指します。 Golang では、型変換演算子を使用して、ある配列を別の配列に変換できます。

配列要素の型を指定する構文は次のとおりです。

var array [length] type

たとえば、長さ 5 の int 型配列を次のように変換します。長さ 3 の float64 型配列の場合、次のコードを使用して変換できます。

package main

import "fmt"

func main() {

arr1 := [5]int{1, 2, 3, 4, 5}
var arr2 [3]float64
for i, v := range arr1 {
    if i < len(arr2) {
        arr2[i] = float64(v)
    } else {
        break
    }
}
fmt.Println(arr2)
ログイン後にコピー

}

2. 配列とスライス間の変換

配列とスライスは Golang で非常に一般的に使用されるデータ構造であり、それらの間の変換によりデータ処理が容易になります。スライスは必要に応じてサイズを増減できる動的配列ですが、配列は固定長のデータ構造です。配列を追加、削除、または変更する必要がある場合は、配列をスライスに変換できます。

配列をスライスに変換するには、スライス演算子 [:] を使用できます。これにより、指定したインデックスから配列の末尾までのすべての要素を返すことができます。例:

package main

import "fmt"

func main() {

arr1 := [5]int{1, 2, 3, 4, 5}
slice := arr1[:]
fmt.Println(slice)
ログイン後にコピー

}

組み込みのコピー関数を使用してスライスを配列に変換します。例:

package main

import "fmt"

func main() {

slice := []int{1, 2, 3, 4, 5}
var arr [5]int
copy(arr[:], slice)
fmt.Println(arr)
ログイン後にコピー

}

3. 間の変換配列と文字列

配列を文字列に変換するには、文字列関数 strings.Join を使用できます。これは、文字列配列を接続して文字列を返すことができます。例:

package main

import (

"fmt"
"strings"
ログイン後にコピー
ログイン後にコピー

)

func main() {

arr := [5]string{"hello", "world", "golang", "python", "java"}
str := strings.Join(arr[:], ",")
fmt.Println(str)
ログイン後にコピー

}

文字列を配列に変換するには、次のようにします。 strings.Split 関数。文字列を配列に切り取って返すことができます。例:

package main

import (

"fmt"
"strings"
ログイン後にコピー
ログイン後にコピー

)

func main() {

str := "hello,world,golang,python,java"
arr := strings.Split(str, ",")
fmt.Println(arr)
ログイン後にコピー

}

上記は、配列間の変換、配列とスライスの変換、配列とスライスの変換など、Golang の配列変換に関する関連知識の紹介です。文字列。開発プロセス中に配列を変換すると、さまざまなデータ操作を便利に処理できます。

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

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