Descrivere i tipi primitivi di Java

Descrivere i tipi primitivi di Java. Descrivere le modalità di conversione tra tipi primitivi numerici.
In Java ci sono due categorie di tipi:
1) Tipi primitivi: int, long, byte, short, float, char, duoble e boolean.
2) Tipi di riferimento: string.
Il tipo int di Java ha una rappresentazione a 32 bit in complemento a due, rappresentazione modulare.
Ha come dominio un sottoinsieme degli interi relativi. E’ possibile dichiarare variabili di tipo int e assegnare
ad una variabile di tipo int il valore di una espressione di tipo int. I Suoi operatori sono + - * / %.
Il tipo char ha una rappresentazione in 16 bit e il suo dominio sono tutti i caratteri dell’alfabeto unicode 2.0.
I suoi operatori sono ++, --, +, - . I letterali char sono normalmente scritti tra apici.
Il tipo double ha una rappresentazione di 64 bit di un numero reale in virgola mobile secondo lo standard
IEEE. Il suo dominio è l’insieme di 264 razionali positivi e negativi e i suoi operatori sono gli stessi del tipo
int.
Il tipo boolean ha una rappresentazione ad un bit il suo dominio è costituito da due elementi: true , false. I
suoi operatori sono &, &&, |, ||, !.
Java fornisce altri tipi primitivi per la rappresentazione di numeri interi relativi , con un intervallo di
definizione diverso. Il tipo long ha 64 bit, i letterali long terminano con il carattere L. Il tipo short ha 16 bit.
Il tipo byte ha 8 bit. Gli operatori definiti su questi tipi sono gli stessi definiti per il tipo int.
Il tipo float rappresenta un numero reale in virgola mobile secondo lo standard IEEE.
Esistono due tipi di conversione: implicita ed esplicita.
La conversione implicita è possibile solo se la variabile e l’espressione hanno lo stesso tipo oppure se il tipo
della variabile è più ampio di quello dell’espressione. Variabile = espressione
Per poter assegnare ad un intero un valore reale dobbiamo utilizzare la conversione esplicita, facendo ciò è
possibile la perdita di precisone. Intero = reale  intero = (int) reale