Diferencia entre int y long

Autor: Laura McKinney
Fecha De Creación: 1 Abril 2021
Fecha De Actualización: 16 Mayo 2024
Anonim
Java: Declarar variables de tipo de dato primitivo: long, int, short, byte (enteros) | casting
Video: Java: Declarar variables de tipo de dato primitivo: long, int, short, byte (enteros) | casting

Contenido


Los tipos de datos int y long se encuentran entre los dos tipos de datos enteros descritos en Java. En Java, los tipos int y long son valores firmados, + ve y -ve. Java no admite int sin signo y tipos largos. La diferencia fundamental entre un tipo de datos int y long es el ancho de cada tipo. El tipo de datos int tiene el ancho de 32 bits para la variable de tipo int. Por otro lado, el tipo de datos largo tiene el ancho de 64 bits para la variable de tipo largo. La tabla de comparación a continuación muestra algunas otras diferencias entre int y long.

  1. Cuadro comparativo
  2. Definición
  3. Diferencias clave
  4. Conclusión

Cuadro comparativo

Bases para la comparaciónEn t largo
BASICEl tipo de datos int es de 32 bits.El tipo de datos largo es de 64 bits.
BytesSi se cuenta en bytes, int es de 4 bytes.Si se cuenta en bytes, la longitud es de 8 bytes.
DistanciaEn Java, el rango de tipo int es –2,147,483,648 a 2,147,483,647.En Java, el rango de tipo largo es
–9,223,372,036,854,775,808 a 9,223,372,036,854,775,807.
Palabra claveLa palabra clave utilizada para declarar una variable de tipo int es "int".La palabra clave utilizada para declarar una variable de tipo largo es "larga".
MemoriaLa memoria requerida para almacenar una variable int es menor en comparación con larga.La memoria requerida para almacenar una variable larga es mayor en comparación con int.


Definición de tipo int

Un tipo de datos int es un tipo de datos más comúnmente utilizado que contiene un valor entero. Un valor que puede contener una variable int no es demasiado corto ni demasiado largo. En general, el valor de una variable int se usa como una variable de bucle que controla el bucle, o se usa como una variable de índice de una matriz. El tipo de datos byte y short tienen un rango más corto en comparación con el tipo de datos int, pero no pueden reemplazar int, incluso si el valor de una variable int es de rango más corto. La razón detrás de esto es que cuando usamos el tipo de datos byte y short en una expresión, mientras evaluamos esa expresión, el compilador promueve el tipo de datos byte y short. Entonces, a partir de esto, se puede decir que es mejor usar int siempre que se necesite un número entero.
Echemos un vistazo al uso del tipo de datos int.

byte a = 70; byte b = 80; int c = a * b; //No hay error. byte d = a + 10; // Error de tiempo de compilación.

Como puede observar en el código anterior, las dos variables de byte a y b contienen el valor 70 y 80, que es un valor válido de rango de bytes. Pero, el resultado intermedio de a * b; excede el límite del byte. Por lo tanto, el compilador promueve automáticamente las variables byte, short y char para escribir int, si se usan en una expresión. Ahora, puede ver que el resultado de a * b se asigna a una variable int que no causa ningún error y se compila sin problemas porque las variables a y b se promueven al tipo int y la asignación del tipo int al tipo int no ' No causa el error.


En la última línea de código, puede ver una expresión, donde el valor 10 se agrega a una variable de byte "a", su resultado aún no superó el límite del byte. Pero, la asignación del resultado intermedio de la expresión "a + 10" a la variable de byte "d", provoca un error de tiempo de compilación porque mientras que la variable de byte de evaluación de expresión "a" se promueve al tipo int. Y la asignación de tipo int a tipo byte no está permitida. Por lo tanto, causa un error de tiempo de compilación.

Definición de tipo largo

El tipo de datos largo tiene el mayor rango y ancho en comparación con los tipos byte, short e int. En Java, el tipo largo es de tipo entero con signo de 64 bits. El tipo largo se usa cuando el tipo int no es tan grande para contener el valor deseado. El rango de largo es –9,223,372,036,854,775,808 a 9,223,372,036,854,775,807, que es bastante grande, para mantener los valores más grandes como números enteros grandes. Podemos entender el tipo largo con un ejemplo a continuación.

peso de clase {public static void main (String args) {int item; int wt_per_item; gramos largos; caja larga; artículo = 10000000; // especifica elementos numéricos wt_per_item = 10000; // especifica el peso de un artículo en kilos gramos = wt_item * 1000; // convierte el peso en gramos Box = item * grams; // calcular el peso de la caja en gramos System.out.ln ("Número de elemento" + elemento); System.out.ln ("Peso por artículo" + wt_per_item + "kilos"); System.out.ln ("Peso de la caja en gramos" + Caja + "kilos"); }} Número de artículo 10000000 Peso por artículo 10000 kilos Peso de la caja en gramos 100000000000000 kilos

Observe la salida en el código anterior; el resultado se calculó para el peso de toda la caja que contiene la caja que contiene 10000000 artículos, de los cuales por artículo pesa 10000 kilos. El valor calculado para el peso de la caja en gramos no puede ser mantenido por una variable int. Por lo tanto, a veces se hace necesario usar el tipo largo cuando se deben calcular o retener valores grandes.

  1. La diferencia básica entre el tipo int y long es su ancho, donde int es de 32 bits y long es de 64 bits.
  2. Los tipos int y long cuando se cuentan en bytes en lugar de bits, el tipo int es de 4 bytes y el tipo long es solo dos veces si escribe int, es decir, 8 bytes.
  3. En Java, el rango de tipo int es de –2,147,483,648 a 2,147,483,647 mientras que el rango de tipo largo es de –9,223,372,036,854,775,808 a 9,223,372,036,854,775,807, que es mucho mayor que el tipo int.
  4. La palabra clave utilizada para declarar una variable del tipo int es "int". Por otro lado, la palabra clave utilizada para declarar la variable de tipo long es "long".
  5. Generalmente, la memoria requerida para mantener el valor de tipo int es menor en comparación con larga.

Conclusión:

Al escribir código si es necesario un valor de rango medio, puede usar el tipo int pero cuando la salida producida por cualquier expresión sea mayor, o los valores más grandes se usen para el cálculo, entonces la variable de tipo largo debe usarse para contener Los valores.