Un numero in virgola mobile è un numero con zero o più cifre dopo il separatore decimale.
Ecco alcuni esempi: -2.4, 0.1, 3.14, 5., 16.984025 e 1024.0.
Tipi diversi di numeri in virgola mobile possono memorizzare un numero diverso di cifre dopo il separatore decimale: questa caratteristica si chiama precisione.
Go ha due tipi in virgola mobile:
float32: 32 bit (precisione di circa 6-9 cifre).float64: 64 bit (precisione di circa 15-17 cifre).
Questo è il tipo in virgola mobile predefinito.Come si può vedere, entrambi i tipi possono memorizzare un numero diverso di cifre.
Questo significa che se proviamo a memorizzare PI in un float32, verranno memorizzate solo le prime 6-9 cifre (con l'ultima cifra arrotondata).
Per impostazione predefinita, Go userà float64 per i numeri in virgola mobile, a meno che il numero non sia:
float32, oppurefloat32, oppurefloat32().Il pacchetto math contiene molte utili funzioni matematiche.
Fai sempre attenzione quando confronti i valori dei tipi in virgola mobile per verificarne l'uguaglianza: valori che sembrano rappresentare lo stesso valore possono in realtà essere diversi.
Puoi trovare una breve introduzione ai numeri in virgola mobile su 0.30000000000000004.com. La Float Toy page offre una bella spiegazione grafica di come i bit di un numero in virgola mobile vengono convertiti in un valore in virgola mobile vero e proprio.