GO語言"strconv"包中"ParseFloat"函數的用法及代碼示例。
用法:
func ParseFloat(s string, bitSize int)(float64, error)
ParseFloat 將字符串 s 轉換為具有 bitSize 指定精度的浮點數:對於 float32 為 32,對於 float64 為 64。當 bitSize=32 時,結果仍然是 float64 類型,但它可以轉換為 float32 而不會改變它的值。
ParseFloat 接受十進製和十六進製浮點數語法。如果 s 格式正確且接近有效浮點數,ParseFloat 返回使用 IEEE754 無偏舍入舍入的最接近的浮點數。 (僅當十六進製表示中的位數多於尾數中的位數時,才對十六進製浮點值進行四舍五入。)
ParseFloat 返回的錯誤具有具體類型 *NumError 並包括 err.Num = s。
如果 s 語法格式不正確,ParseFloat 返回 err.Err = ErrSyntax
如果 s 在語法上格式正確,但距離給定大小的最大浮點數超過 1/2 ULP,則 ParseFloat 返回 f = ±Inf, err.Err = ErrRange
ParseFloat 將字符串 "NaN" 和(可能有符號的)字符串 "Inf" 和 "Infinity" 識別為它們各自的特殊浮點值。匹配時忽略大小寫。
例子:
package main
import (
"fmt"
"strconv"
)
func main() {
v := "3.1415926535"
if s, err := strconv.ParseFloat(v, 32); err == nil {
fmt.Printf("%T, %v\n", s, s)
}
if s, err := strconv.ParseFloat(v, 64); err == nil {
fmt.Printf("%T, %v\n", s, s)
}
if s, err := strconv.ParseFloat("NaN", 32); err == nil {
fmt.Printf("%T, %v\n", s, s)
}
// ParseFloat is case insensitive
if s, err := strconv.ParseFloat("nan", 32); err == nil {
fmt.Printf("%T, %v\n", s, s)
}
if s, err := strconv.ParseFloat("inf", 32); err == nil {
fmt.Printf("%T, %v\n", s, s)
}
if s, err := strconv.ParseFloat("+Inf", 32); err == nil {
fmt.Printf("%T, %v\n", s, s)
}
if s, err := strconv.ParseFloat("-Inf", 32); err == nil {
fmt.Printf("%T, %v\n", s, s)
}
if s, err := strconv.ParseFloat("-0", 32); err == nil {
fmt.Printf("%T, %v\n", s, s)
}
if s, err := strconv.ParseFloat("+0", 32); err == nil {
fmt.Printf("%T, %v\n", s, s)
}
}
輸出:
float64, 3.1415927410125732 float64, 3.1415926535 float64, NaN float64, NaN float64, +Inf float64, +Inf float64, -Inf float64, -0 float64, 0
相關用法
- GO ParseFile用法及代碼示例
- GO ParseAddress用法及代碼示例
- GO ParseUint用法及代碼示例
- GO ParseIP用法及代碼示例
- GO ParseMediaType用法及代碼示例
- GO ParseInt用法及代碼示例
- GO ParseCIDR用法及代碼示例
- GO ParseInLocation用法及代碼示例
- GO ParseDuration用法及代碼示例
- GO Parse用法及代碼示例
- GO ParseAddressList用法及代碼示例
- GO ParseBool用法及代碼示例
- GO ParseQuery用法及代碼示例
- GO ParsePKIXPublicKey用法及代碼示例
- GO PathUnescape用法及代碼示例
- GO PathEscape用法及代碼示例
- GO PutUvarint用法及代碼示例
- GO PlainAuth用法及代碼示例
- GO Print用法及代碼示例
- GO Pow10用法及代碼示例
注:本文由純淨天空篩選整理自golang.google.cn大神的英文原創作品 ParseFloat。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。