In Golang, to convert string
to int
you can use strconv.Atoi(s)
and strconv.ParseInt(s, base, bitSize)
. Lets walk through this tutorial to see the examples in practice
Convert string to int with strconv.Atoi(s)
- You can use
strconv.Atoi(s)
to convert a strings
to a 32 bit integer.Atoi
stands for ASCII to integer
package main
import (
"fmt"
"strconv"
)
func main() {
str := "1"
n, _ := strconv.Atoi(str)
fmt.Println(n)
}
Output
1
- If the input string isn't in the integer format, you would get the zero value in return
package main
import (
"fmt"
"strconv"
)
func main() {
str := "1.9"
n, _ := strconv.Atoi(str)
fmt.Println(n)
}
Output
0
- Beside returns integer value,
strconv.Atoi(s)
also returns an error in case the converting isn't successful
package main
import (
"fmt"
"strconv"
)
func main() {
str := "1a"
n, err := strconv.Atoi(str)
if err != nil {
fmt.Println(err)
} else {
fmt.Println(n)
}
}
Output
strconv.Atoi: parsing "1a": invalid syntax
Convert string to int with strconv.ParseInt(s, base, bitSize)
The strconv.ParseInt(s, base, bitSize)
convert the given string s
to an integer in the given base (0,2 to 36) and bit size (0 to 64)
Atoi(s)
is equivalent to Parseint(s, 10, 0)
Output
9