Go by Example δΈ­ζ–‡η‰ˆ: ζ•°ε­—θ§£ζž

δ»Žε­—η¬¦δΈ²δΈ­θ§£ζžζ•°ε­—εœ¨εΎˆε€šη¨‹εΊδΈ­ζ˜―δΈ€δΈͺεŸΊη‘€εΈΈθ§ηš„δ»»εŠ‘οΌŒ θ€Œεœ¨ Go δΈ­οΌŒζ˜―θΏ™ζ ·ε€„η†ηš„γ€‚

package main

ε†…ε»Ίηš„ strconv εŒ…ζδΎ›δΊ†ζ•°ε­—θ§£ζžθƒ½εŠ›γ€‚

import (
    "fmt"
    "strconv"
)
func main() {

使用 ParseFloatοΌŒθΏ™ι‡Œηš„ 64 θ‘¨η€Ίθ§£ζžηš„ζ•°ηš„δ½ζ•°γ€‚

    f, _ := strconv.ParseFloat("1.234", 64)
    fmt.Println(f)

εœ¨δ½Ώη”¨ ParseInt θ§£ζžζ•΄εž‹ζ•°ζ—ΆοΌŒ δΎ‹ε­δΈ­ηš„ε‚ζ•° 0 葨瀺θ‡ͺεŠ¨ζŽ¨ζ–­ε­—η¬¦δΈ²ζ‰€θ‘¨η€Ίηš„ζ•°ε­—ηš„θΏ›εˆΆγ€‚ 64 θ‘¨η€ΊθΏ”ε›žηš„ζ•΄εž‹ζ•°ζ˜―δ»₯ 64 δ½ε­˜ε‚¨ηš„γ€‚

    i, _ := strconv.ParseInt("123", 0, 64)
    fmt.Println(i)

ParseInt 会θ‡ͺεŠ¨θ―†εˆ«ε‡Ίε­—η¬¦δΈ²ζ˜―εε…­θΏ›εˆΆζ•°γ€‚

    d, _ := strconv.ParseInt("0x1c8", 0, 64)
    fmt.Println(d)

ParseUint δΉŸζ˜―ε―η”¨ηš„γ€‚

    u, _ := strconv.ParseUint("789", 0, 64)
    fmt.Println(u)

Atoi ζ˜―δΈ€δΈͺεŸΊη‘€ηš„ 10 θΏ›εˆΆζ•΄εž‹ζ•°θ½¬ζ’ε‡½ζ•°γ€‚

    k, _ := strconv.Atoi("135")
    fmt.Println(k)

εœ¨θΎ“ε…₯ι”™θ――ζ—ΆοΌŒθ§£ζžε‡½ζ•°δΌšθΏ”ε›žδΈ€δΈͺ错误。

    _, e := strconv.Atoi("wat")
    fmt.Println(e)
}
$ go run number-parsing.go 
1.234
123
456
789
135
strconv.ParseInt: parsing "wat": invalid syntax

δΈ‹ι’ζˆ‘δ»¬ε°†δΊ†θ§£δΈ€δΈ‹ε¦δΈ€δΈͺεΈΈθ§ηš„θ§£ζžδ»»εŠ‘οΌšURL θ§£ζžγ€‚

δΈ‹δΈ€δΈͺ例子: URL 解析