  |
Intere: |
  |
decimali: 17 -1 |
  |
esadecimali: 0xff cifre 0-9,A-F, 0x o 0x in testa |
  |
ottali: 0177 cifre 0-8, 0 in testa |
possiamo scrivere costanti il tipo intero usando la base decimale, sia la base 8 e 16. Per scrivere un numero intero in base 16 (ovvero esadecimale) si deve iniziare una costante numerica con 0x. Invece per scrivere un numero intero usando come base l'ottale si deve scriver numero che inizia per 0. Tutto qui. A volte però questa può trarre in inganno, in quanto se si scrive 010 in cun contesto cui tutti gli altri numeri sono altre cifre, si vorrebbe scrivere il numero dieci e invece si scrive il numero 8.
  |
Intere lunghe: |
  |
decimali: 17l, -1L |
per scrivere una costante di un lungo si utilizza alla fine del numero una lettera elle. Solitamente questa lettera si scrive maiuscola, perché la lettera elle minuscola troppo simile al numero 1 da trarre continuamente in inganno. L'uso della costante lunga esplicita va considerato quando si vuole forzare la precisione di un'espressione a un certo numero di bit. Per rendersi conto di questo concetto occorre però esaminare la regola della promozione vedremo più avanti.
  |
Non ci sono costanti short o byte |
  |
o se ne accorge il compilatore:
byte b = 17; |
  |
oppure viene richiesta una conversione:
b = (byte)257; |
vediamo infatti una caratteristica del calcolo delle espressioni la mancanza delle costanti più piccole. Questo fatto ricondotto al fatto che i calcoli interi vengono fatti sempre a 32 bit, per cui anche a voler prendere in mano un intero piccolo a 8 o 16 bit, questo verrebbe automaticamente ampliato a 32 bit, per cui non ha senso inserire una sintassi per esprimere costanti più piccole dell'intero. L'unico caso in cui può servire è nelle inizializzazioni, nel qual caso ci pensa il compilatore a ridurre opportunamente il valore da assegnare la variabile.
  |
Floating point: |
  |
17d 17D |
  |
double con la d o la D in coda opzionale |
Una costante, in virgola mobile si caratterizza dal fatto che ha la virgola (ovvero, siccome si utilizza la passione inglese, in realtà il punto decimale). Una costante in virgola mobile può esserlo anche se viene utilizzato invece che il punto decimale, la lettera e dell'esponente. Si può ancora scrivere una costante in virgola mobile anche se il valore reale è intero, semplicemente aggiungendo '.0'.
  |
19.4 19f |
  |
float, in formato decimale con la f o la F in coda
obbligatoria |
A questo punto è importante precisare che nei calcoli in virgola mobile, comanda il tipo double, a 64 bit. Per cui 17.0 è una costante di tipo double. Se esprimente il valore in virgola mobile a precisione inferiore, ovvero il float, basta usare come estensione della cifra la lettera f.
|