Parsing dei Numeri
Una stringa viene convertita a numero di un tipo dato con funzioni del package strconv
.
(520number-parsing.go):
package main
// Conversione di stringhe a numeri
import "strconv"
import "fmt"
func main() {
// Conversione a float con bits di precisione
f, _ := strconv.ParseFloat("1.234", 64)
fmt.Println(f)
// 0 dice di dedurre la base dalla stringa
i, _ := strconv.ParseInt("123", 0, 64)
fmt.Println(i)
// Numero esadecimale
d, _ := strconv.ParseInt("0x1c8", 0, 64)
fmt.Println(d)
// Numero ottale
o, _ := strconv.ParseInt("0123", 0, 64)
fmt.Println(o)
// Parse di intero senza segno
u, _ := strconv.ParseUint("789", 0, 64)
fmt.Println(u)
// Copia del vecchio 'atoi' del C
// In realtà è un alias per ParseInt
k, _ := strconv.Atoi("135")
fmt.Println(k)
// Errore se la stringa è malformata
_, e := strconv.Atoi("wat")
fmt.Println(e)
}