How to Convert string to float type in Go?
Like most modern languages, Golang includes strings as a built-in type. Let's take an example, you may have a string that contains a numeric value "3.1415926535". However, because this value is represented as a string, you can't perform any mathematical calculations on it. You need to explicitly convert this string type into an float type before you can perform any mathematical calculations on it.
ParseFloat() Function
ParseFloat converts the string s to a floating-point number with the precision specified by bitSize: 32 for float32, or 64 for float64. When bitSize=32, the result still has type float64, but it will be convertible to float32 without changing its value.Syntax
func ParseFloat(s string, bitSize int) (float64, error)
Example
package main
import (
"fmt"
"reflect"
"strconv"
)
func main() {
s := "3.1415926535"
f, err := strconv.ParseFloat(s, 8)
fmt.Println(f, err, reflect.TypeOf(f))
s1 := "-3.141"
f1, err := strconv.ParseFloat(s1, 8)
fmt.Println(f1, err, reflect.TypeOf(f1))
s2 := "A-3141X"
f2, err := strconv.ParseFloat(s2, 32)
if err != nil {
fmt.Println(err)
} else {
fmt.Println(f2, err, reflect.TypeOf(f2))
}
}
Output
3.1415926535 <nil> float64
-3.141 <nil> float64
strconv.ParseFloat: parsing "A-3141X": invalid syntax
Most Helpful This Week
Normal function parameter with variadic function parameterHow to split a string on white-space?How to check lowercase characters in a string in Golang?What is Rune? How to get ASCII value of any character in Go?How to concatenate two or more slices in Golang?Get current date and time in various format in golangRegular expression to extract all Non-Alphanumeric Characters from a StringCreate and Print Multi Dimensional Slice in GolangSplit a string at uppercase letters using regular expression in GolangHow to read input from console line?