Go言語の基本的な型変換を解説します。
この記事でわかること
- Goの基本的な型変換の方法が理解できる
モグモグさん
動作の確認は、The Go Playground で行っています。
変換方法
変換する場合は、strconvパッケージを使います。
実行する場合は下記のようにimportする必要があります。
import("strconv")
文字列(string)を数値(int)に変換
strconv.Atoiを使って変換
var str string = "10"
i, err := strconv.Atoi(str)
if err != nil {
fmt.Println(err)
}
fmt.Println(i) // 10
数値(int)を文字列(string)に変換
strconv.Itoaを使って変換
補足
Itoaの場合は、エラーが返却されません。
var i int = 10
str := strconv.Itoa(i)
fmt.Println(str) // "10"
文字列(string)をboolに変換
strconv.ParseBoolを使って変換
var strTrue string = "true" // "1", "t", "T", "TRUE", "True" でも変換可能
var strFalse string = "false" // "0", "f", "F", "FALSE", "False" でも変換可能
bTrue, err := strconv.ParseBool(strTrue)
bFalse, err := strconv.ParseBool(strFalse)
if err != nil {
fmt.Println(err)
}
fmt.Println(bTrue) // true
fmt.Println(bFalse) // false
boolを文字列(string)に変換
strconv.FormatBoolを使って変換
補足
FormatBoolの場合は、エラーが返却されません。
var bTrue bool = true
var bFalse bool = false
strTrue := strconv.FormatBool(bTrue)
strFalse := strconv.FormatBool(bFalse)
fmt.Println(strTrue) // "true"
fmt.Println(strFalse) // "false"
まとめ
基本中の基本ですが、よく使うので覚えておくといいと思います。
最後に紹介した変換方法をまとめておきます。
変換方法
- 文字列(string)を数値(int)に変換: strconv.Atoi(string)
- 数値(int)を文字列(string)に変換: strconv.Itoa(int)
- 文字列(string)をboolに変換: strconv.ParseBool(string)
- boolを文字列(string)に変換: strconv.FormatBool(bool)