Tipi numerici
int, double, decimal e altro.
Tipi numerici è una lezione C# Academy gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento C# Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso C# Academy include 4 lezioni in totale.
Perché i tipi numerici sono importanti
C# offre diversi tipi numerici, ognuno dei quali memorizza un intervallo di valori diverso e utilizza una quantità diversa di memoria.
Scegliere quello giusto mantiene i programmi corretti ed efficienti. Un numero intero, come il conteggio degli utenti, può essere memorizzato in un int; per un prezzo servono i decimali.
In questa lezione conoscerà i tipi interi, a virgola mobile e decimali.
Tipi interi
Gli interi memorizzano numeri senza parte frazionaria.
int— 32 bit, il valore predefinito più comunelong— 64 bit, per conteggi molto grandishortebyte— intervalli più piccoli
Utilizzi int a meno che un valore non possa superare circa due miliardi.
int age = 30;
long population = 8000000000;
Console.WriteLine(age);
Console.WriteLine(population);Intervalli degli interi
Ogni tipo intero ha valori minimo e massimo fissi. Può leggerli con int.MaxValue e costanti simili.
Superare il valore massimo causa un overflow, per cui il valore ricomincia ciclicamente senza alcun avviso.
Console.WriteLine(int.MinValue);
Console.WriteLine(int.MaxValue);
Console.WriteLine(long.MaxValue);Virgola mobile: double
double è un tipo a virgola mobile a 64 bit per i numeri reali con valori decimali.
È il tipo predefinito per i letterali frazionari, quindi 3.14 è un double. È veloce e ottimo per la scienza e la grafica, ma memorizza i valori in modo approssimato.
double pi = 3.14159;
double half = 1.0 / 2.0;
Console.WriteLine(pi);
Console.WriteLine(half);Virgola mobile: float
float è un tipo a virgola mobile a 32 bit. Utilizza metà della memoria di double, ma può contenere meno cifre.
Un letterale float richiede il suffisso f, come in 2.5f; in caso contrario, C# tratta il numero come un double.
float temperature = 21.5f;
float ratio = 0.1f;
Console.WriteLine(temperature);
Console.WriteLine(ratio);Valori monetari precisi: decimal
decimal è un tipo a 128 bit progettato per i valori monetari e i decimali esatti. Evita i piccoli errori di arrotondamento di double.
Un letterale decimal utilizza il suffisso m, come in 9.99m. Lo utilizzi per prezzi, operazioni bancarie e contabilità.
decimal price = 9.99m;
decimal tax = 0.08m;
Console.WriteLine(price + price * tax);double e decimal a confronto
Osservi come double possa produrre un risultato sorprendente mentre decimal rimane preciso.
Per questo il codice finanziario preferisce decimal, anche se è più lento di double.
double d = 0.1 + 0.2;
decimal m = 0.1m + 0.2m;
Console.WriteLine(d);
Console.WriteLine(m);Inferenza del tipo con var
La parola chiave var consente al compilatore di dedurre il tipo dal valore a destra.
La variabile mantiene comunque un tipo fisso: var count = 5; crea un int. I suffissi determinano il tipo dei letterali frazionari.
var count = 5;
var pi = 3.14;
var price = 9.99m;
Console.WriteLine(count.GetType());
Console.WriteLine(price.GetType());Separatori delle cifre
Per migliorare la leggibilità, può inserire caratteri di sottolineatura tra le cifre di qualsiasi letterale numerico. Il compilatore ignora questi caratteri.
In questo modo i numeri grandi diventano molto più facili da leggere a colpo d'occhio.
int million = 1_000_000;
long distance = 9_460_730_472_580_800;
Console.WriteLine(million);
Console.WriteLine(distance);Valori speciali di double
double può rappresentare valori speciali: infinito positivo e negativo e NaN (not a number).
La divisione per zero con i double produce infinito invece di un errore, mentre la divisione intera per zero genera un'eccezione.
double inf = 1.0 / 0.0;
double nan = 0.0 / 0.0;
Console.WriteLine(inf);
Console.WriteLine(nan);Scegliere il tipo corretto
Una guida rapida:
- Numeri interi →
int(oppurelongse sono molto grandi) - Decimali scientifici o generici →
double - Valori monetari e valori esatti →
decimal
Una scelta corretta previene i bug dovuti all'overflow e gli errori di arrotondamento.
Verifica rapida
Verifichi la comprensione dei tipi numerici.
Riepilogo
Ha imparato i principali tipi numerici di C#: int e long per i numeri interi, double e float per i numeri a virgola mobile e decimal per i valori monetari esatti.
Ricordi i suffissi dei letterali: f per float, m per decimal e i caratteri di sottolineatura per migliorare la leggibilità. Scelga i tipi bilanciando intervallo, precisione e memoria.
Impara C# con un tutor IA — gratis
Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.
- Corsi
- 93
- Lezioni
- 346
Domande Frequenti
La lezione «Tipi numerici» è gratuita?
Sì — il testo completo di «Tipi numerici» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso C# Academy, passa a CoddyKit PRO. Il corso C# Academy include 4 lezioni in totale.
Cosa imparerò in «Tipi numerici»?
int, double, decimal e altro. Eserciti C# Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare C# Academy?
Non è richiesta alcuna esperienza precedente. C# Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.
Quanto tempo richiede la lezione «Tipi numerici»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione C# Academy?
Sì. Ogni lezione C# Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.