Go言語で文字列と数値を変換する方法
Go言語で文字列と数値を変換する方法について説明します。
文字列から数値への変換
Go言語では、strconvパッケージを使用して文字列を数値に変換することができます。
代表的な関数には、Atoi(文字列を整数に変換する)や、ParseFloat(文字列を浮動小数点数に変換する)などがあります。
整数への変換
strconv.Atoi関数を使うと、文字列を整数に変換できます。
例えば、次のように使用します。
import ( "fmt" "strconv" ) func main() { str := "123" num, err := strconv.Atoi(str) if err != nil { fmt.Println("エラー:", err) return } fmt.Println("変換された整数:", num) }
このコードでは、文字列 "123" が整数 123 に変換されます。
変換が失敗した場合には、err にエラーが格納されるので、それをチェックすることが重要です。
浮動小数点数への変換
strconv.ParseFloat関数を使うと、文字列を浮動小数点数に変換できます。
例えば、次のように使用します。
import ( "fmt" "strconv" ) func main() { str := "123.456" num, err := strconv.ParseFloat(str, 64) if err != nil { fmt.Println("エラー:", err) return } fmt.Println("変換された浮動小数点数:", num) }
ここでは、文字列 "123.456" が浮動小数点数 123.456 に変換されます。
第二引数の 64 は変換する浮動小数点数の精度を指定します。
32 を指定すれば float32 になります。
数値から文字列への変換
数値を文字列に変換する場合も、strconvパッケージを使います。
代表的な関数には、Itoa(整数を文字列に変換する)や、FormatFloat(浮動小数点数を文字列に変換する)があります。
整数から文字列への変換
strconv.Itoa関数を使うと、整数を文字列に変換できます。
例えば、次のように使用します。
import ( "fmt" "strconv" ) func main() { num := 123 str := strconv.Itoa(num) fmt.Println("変換された文字列:", str) }
このコードでは、整数 123 が文字列 "123" に変換されます。
浮動小数点数から文字列への変換
strconv.FormatFloat関数を使うと、浮動小数点数を文字列に変換できます。
例えば、次のように使用します。
import ( "fmt" "strconv" ) func main() { num := 123.456 str := strconv.FormatFloat(num, 'f', 2, 64) fmt.Println("変換された文字列:", str) }
ここでは、浮動小数点数 123.456 が文字列 "123.46" に変換されます。
第二引数はフォーマットを指定し、'f' は通常の浮動小数点数表現を意味します。
第三引数は小数点以下の桁数を指定します。
第四引数は精度を指定します。
エラーハンドリング
数値から文字列への変換にはエラーは発生しませんが、文字列から数値への変換にはエラーが発生する可能性があります。
変換に失敗した場合には、err をチェックしてエラーメッセージを表示することが重要です。
このように、Go言語ではstrconvパッケージを利用して、文字列と数値の間で簡単に変換を行うことができます。
エラーチェックを怠らずに適切な変換処理を行いましょう。