Junior
Come convertire una stringa in un numero intero e viceversa?
sobes.tech AI
Risposta dell'AI
Per convertire una stringa in un numero intero, si utilizza il pacchetto strconv, la funzione Atoi o ParseInt. Per convertire un numero intero in stringa, si utilizza anch'esso il pacchetto strconv, la funzione Itoa o FormatInt.
import "strconv"
func main() {
// Conversione da stringa a numero
strNum := "123"
intNum, err := strconv.Atoi(strNum) // Atoi restituisce int ed errore
if err != nil {
// gestione errore
}
intNum64, err := strconv.ParseInt("456", 10, 64) // ParseInt restituisce int64, base, bit
if err != nil {
// gestione errore
}
// Conversione da numero a stringa
numToStr := 789
strResult := strconv.Itoa(numToStr) // Itoa restituisce stringa
num64ToStr := int64(1011)
strResult64 := strconv.FormatInt(num64ToStr, 10) // FormatInt restituisce stringa, base
}
Funzioni principali:
| Funzione | Descrizione | Valore restituito | Pacchetto |
|---|---|---|---|
Atoi(s string) |
Converte una stringa in un numero intero decimale. | (int, error) |
strconv |
ParseInt(s string, base int, bitSize int) |
Converte una stringa in un numero intero di base e dimensione in bit specificate. | (int64, error) |
strconv |
Itoa(i int) |
Converte un numero intero decimale in stringa. | string |
strconv |
FormatInt(i int64, base int) |
Converte un numero intero di dimensione in bit in una stringa con la base specificata. | string |
strconv |
Atoi è una abbreviazione comoda per ParseInt(s, 10, 0) con il risultato convertito in int. Itoa è un'abbreviazione per FormatInt(int64(i), 10).
Quando si converte una stringa in numero, è importante gestire gli errori, poiché la stringa potrebbe contenere caratteri non numerici o superare la dimensione del tipo di dato.