Golang での型変換は、特に異なるデータ型間の変換を扱う場合によく使用される操作です。この記事では、基本概念から高度なアプリケーションまで、Golang の型変換に関する関連知識の詳細な分析を読者に提供し、具体的なコード例を示します。
Golang では、型変換は、ある型の値を別の型の値に変換するプロセスです。 Golang での型変換は明示的に行う必要があり、通常はかっこと変換する型を使用します。 Golang では暗黙的な型変換が許可されていないため、型変換を実行する前に型の互換性を確認する必要があることに注意してください。
型変換の基本的な構文は次のとおりです。
newType := desiredType(expression)
このうち、desiredType
は変換対象の型を表し、expression
は変換対象の型を表します。変換する式。モード。
Golang における整数型間の変換は比較的単純で簡単です。ターゲットの型をクリックするだけで追加できます。 。例:
var a int = 10 var b int64 = int64(a) fmt.Println(b)
浮動小数点型間の変換も整数型と同様で、変換する浮動小数点型の前にターゲットの型を追加するだけで済みます。 。例:
var x float32 = 3.14 var y float64 = float64(x) fmt.Println(y)
文字列変換は通常、文字列と他の基本型の間で発生します。文字列を別の型に変換する一般的な方法は、strconv
パッケージの関数を使用することです。例:
str := "123" num, _ := strconv.Atoi(str) fmt.Println(num)
配列とスライス間の変換では、配列を走査して要素を 1 つずつコピーする必要があります。たとえば、配列をスライスに変換します:
arr := [3]int{1, 2, 3} slice := arr[:] fmt.Println(slice)
2 つの構造のフィールド タイプが同じであり、数値が同じであれば、構造間の変換を直接割り当てることができます。フィールドも同じです。例:
type Person struct { Name string Age int } type Employee struct { Name string Age int } person := Person{"Alice", 30} employee := Employee(person) fmt.Println(employee)
インターフェイス型変換は、Golang の最も重要な機能の 1 つです。型アサーションを介してインターフェイスを特定の型に変換し、それを変換します。例:
var i interface{} = "hello" str, ok := i.(string) if ok { fmt.Println(str) }
Golang では、type
キーワードを使用してカスタム型を作成でき、カスタム型の変換も同様です。共通の操作。例:
type MyInt int var num MyInt = 10 newNum := int(num) fmt.Println(newNum)
上記は、Golang の型変換の基本概念、基本的な型変換、複合型変換、およびいくつかの高度な応用例です。この記事の分析を通じて、読者は Golang における型変換の関連知識をより深く理解し、実際の開発で柔軟に活用することができます。この記事を読んで、Golang の型変換についてより明確に理解していただければ幸いです。
以上がGolangの型変換を詳しく解説:入門から習熟までの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。