Saltar al contenido

¿Cuál es la diferencia entre Integer e int en Java?

Agradeceríamos tu ayuda para compartir nuestras secciones sobre las ciencias de la computación.

Solución:

int es un tipo primitivo. Variables de tipo int almacene el valor binario real para el entero que desea representar. int.parseInt("1") no tiene sentido porque int es no una clase y por lo tanto no tiene ningún método.

Integer es una clase, no diferente de cualquier otra en el lenguaje Java. Variables de tipo Integer Tienda referencias para Integer objetos, al igual que con cualquier otro tipo de referencia (objeto). Integer.parseInt("1") es una llamada a la static método parseInt de clase Integer (Tenga en cuenta que este método en realidad devuelve un int y no un Integer).

Para ser más especifico, Integer es una clase con un solo campo de tipo int. Esta clase se utiliza cuando se necesita un int para ser tratado como cualquier otro objeto, como en tipos genéricos o situaciones en las que necesita la anulabilidad.

Tenga en cuenta que cada tipo primitivo en Java tiene un equivalente envoltura clase:

  • byte posee Byte
  • short posee Short
  • int posee Integer
  • long posee Long
  • boolean posee Boolean
  • char posee Character
  • float posee Float
  • double posee Double

Las clases contenedoras heredan de la clase Object y las primitivas no. Por lo tanto, se puede usar en colecciones con referencia de Objeto o con Genéricos.

Desde java 5 tenemos autoboxing, y la conversión entre clase primitiva y contenedora se realiza automáticamente. Tenga cuidado, sin embargo, ya que esto puede introducir errores sutiles y problemas de rendimiento; ser explícito sobre las conversiones nunca está de más.

Un entero es más o menos un envoltorio para el tipo primitivo int. Te permite usar todas las funciones de la clase Integer para hacerte la vida un poco más fácil.

Si eres nuevo en Java, algo que deberías aprender a apreciar es la documentación de Java. Por ejemplo, cualquier cosa que desee saber sobre la clase entera se documenta en detalle.

Esto está directamente fuera de la documentación de la clase Integer:

La clase Integer envuelve un valor del tipo primitivo int en un objeto. Un objeto de tipo Integer contiene un solo campo cuyo tipo es int.

Una variable int contiene un valor entero con signo de 32 bits. Un Entero (con I mayúscula) contiene una referencia a un objeto de tipo (clase) Entero, o a null.

Java lanza automáticamente entre los dos; de Integer a int siempre que el objeto Integer aparece como argumento de un operador int o se asigna a una variable int, o se asigna un valor int a una variable Integer. Este casting se llama boxing/unboxing.

Si una variable entera hace referencia a null está desempaquetado, explícita o implícitamente, se lanza una NullPointerException.

(En el texto anterior, el término “variable” significa variable local, campo o parámetro)

Comentarios y calificaciones

Si te ha sido de provecho nuestro post, sería de mucha ayuda si lo compartieras con el resto juniors y nos ayudes a extender nuestro contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *