Repaso
English
Java CoreBaseJV-03

¿Qué afirmación sobre int e Integer es correcta?

Opciones

  1. Son el mismo tipo, escrito de dos formas distintas
  2. int es un primitivo y no puede ser null; Integer es un objeto y sí puede (Opción correcta)
  3. Integer siempre es más rápido que int porque es un objeto
  4. int puede ser un argumento de tipo genérico, como en List<int>

Respuesta

int es un primitivo (no puede ser null); Integer es un objeto wrapper (puede ser null)

Por qué

Java tiene 8 tipos primitivos (int, long, double, boolean, char, byte, short, float). Guardan un valor simple y nunca pueden ser null.

Cada primitivo tiene una clase wrapper (Integer, Long, Double...) que es un objeto real. Puede ser null y se puede usar en colecciones y generics: List<Integer> funciona, List<int> no.

Java convierte entre ellos automáticamente (autoboxing/unboxing). Hacer unboxing de un Integer null lanza NullPointerException.

Recuerda

Primitivo = valor simple. Wrapper = objeto (puede ser null).

Términos clave

Practica esta pregunta en Repaso