class Test{
public static void main(String[] args){
int a = 1;
int b = 5;
Integer c = new Integer(1);
Integer d = 5; //autoboxing at work
System.out.println(c.compareTo(d));
System.out.println(a.compareTo(b));
}
}
Perché non compila a.compareTo(b)
(int cannot be dereferenced
)? So che compareTo
richiede oggetti, ma pensavo che la funzione di autoboxing avrebbe automaticamente creato uno uno Integer
quando necessario. Perché in questo caso non si verifica l'autoboxing? E quali altri casi non si verificherà?Java no autoboxing per int per il metodo compareTo?