Originariamente inviato da valia
il tipo primitivo non è un oggetto e non è un derivato da object.
E' la rappresentazione dei comuni tipi di dati a tutti i linguaggi.
Dalla versione 6 di java

codice:
int test = 4; 

if (test instanceof Integer) System.out.println("true");
else System.out.println("false");
dovresti avere true visto che c'è il boxing/unboxing automatico dei tipi primitivi
In questo caso non faccio una comparazione ( instanceof ) ?
Cosa c'entra l'unboxing se è una comparazione ? Cioé instanceof come procede ?
Se int è primitivo e Integer è una classe, la comparazione tra le due mi dovrebbe dare FALSE.

se facessi una assegnazione capirei il funzionamento di boxing/unboxing, ma se dico "compara caio con tizio" non si dovrebbe modificare ne caio ne tizio, ancor di più a me non interessa neanche il valore, mi interessa solo se quell'oggetto è una istanza o meno di una classe, che senso ha andare a vedere cosa c'è dentro ( unboxing ) ?