Golang は強力なプログラミング言語であり、そのシンプルさと効率性により、多くの開発者に好まれる言語の 1 つとなっています。実際の開発では、異なるデータ型間の変換の問題が頻繁に発生し、データ変換をいかにスムーズに行うかが重要なスキルとなっています。この記事では、具体的なコード例を通じて、Golang でさまざまなデータ型間でエレガントに変換する方法について説明します。
Golang では、文字列を整数に変換するのが一般的な操作です。この機能は、組み込みの strconv
パッケージを使用して実現できます。以下はサンプル コードです:
package main import ( "fmt" "strconv" ) func main() { str := "123" num, err := strconv.Atoi(str) if err != nil { fmt.Println("转换失败:", err) return } fmt.Println("转换后的整数:", num) }
文字列を整数に変換するのとは対照的に、整数を文字列に変換することも一般的なタスクです。 strconv
パッケージの Itoa
関数を使用して、整数を文字列に変換する関数を実装できます。以下はサンプル コードです:
package main import ( "fmt" "strconv" ) func main() { num := 123 str := strconv.Itoa(num) fmt.Println("转换后的字符串:", str) }
Golang では、配列とスライスは一般的に使用される 2 つのデータ構造です。場合によっては、配列をスライスに変換したり、スライスを配列に変換したりする必要があります。以下はサンプルコードです:
package main import "fmt" func main() { arr := [3]int{1, 2, 3} slice := arr[:] fmt.Println("数组转切片:", slice) slice2 := []int{4, 5, 6} arr2 := [3]int{} copy(arr2[:], slice2) fmt.Println("切片转数组:", arr2) }
実際の開発では、構造体と JSON 間の変換は非常に一般的な操作です。 Golang は、構造と JSON データを変換するための encoding/json
パッケージを提供します。以下はサンプル コードです:
package main import ( "encoding/json" "fmt" ) type Person struct { Name string `json:"name"` Age int `json:"age"` } func main() { p := Person{Name: "Alice", Age: 30} jsonData, err := json.Marshal(p) if err != nil { fmt.Println("转换失败:", err) return } fmt.Println("结构体转JSON:", string(jsonData)) var p2 Person err = json.Unmarshal(jsonData, &p2) if err != nil { fmt.Println("转换失败:", err) return } fmt.Println("JSON转结构体:", p2) }
上記のコード例を通じて、Golang で異なるデータ型間でエレガントに変換する方法を理解しました。これらの変換操作は実際の開発でも頻繁に使用されるため、これらの手法をマスターすることで、より効率的にデータ変換の問題に対処できるようになります。この記事がお役に立てば幸いです。また、Golang データ変換に関するヒントや経験をさらに共有していただければ幸いです。
以上がGolang データ変換方法: 異なるデータ型間をエレガントに変換するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。