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
How to fix race condition using Atomic Functions in Golang?
Golang Slice vs Map Benchmark Testing
How to import and alias package names?
Get Hours, Days, Minutes and Seconds difference between two dates [Future and Past]
Simple example of Map initialization in Go
How to iterate over a Map using for loop in Go?
Most Helpful This Week
How to create Empty and Nil Slice?Regular expression to validate email addressSimple function with return value in GolangExample to compare Println vs PrintfHow to add Watermark or Merge two image?Sierpinski triangle in Go Programming LanguageSelect single argument from all arguments of variadic functionGet Year, Month, Day, Hour, Min and Second from a specified dateExample: Stack and Caller from RUNTIME packageWhat is GOPATH?