Tipos de Datos en Java - Primitivos

2019-05-13

Data types

En java existen dos tipos de datos: primitivos y de referencia u objeto, los cuales se pueden almacenar en una variable.

Variable
Es un espacio de memoria al que le asignamos un contenido, puede ser un valor numérico,de tipo carácter o cadena de caracteres

A continuación se explican los tipos de datos primitivos

Tipos de datos Primitivos

Java tiene ocho tipos de dato incorporado, llamados Tipos Primitivos de Java. Estos ocho tipos de datos representan los bloques de construcción para los objetos de Java, porque todos los objetos de Java son solo una colección compleja de estos tipos de datos primitivo.

Identificador Tipo Rango Ejemplo Valor por Defecto
boolean 16 bits true o false true false
byte 8 bit -128 a 127 15 0
short 16 bits -32,768 a 32,767 15,858 0
int 32 bits -2,147,483,648 a 2,147,483,647 4,132,852 0
long 64 bits 9,223,372,036,854,775,808 a +9,223,372,036,854,775,807 5,462,895,628,956 0
float 32 bits 1.40129846432481707e-45 a 3.40282346638528860e+38 123 .45F 0.0F
double 64 bits 4.94065645841246544e-324d a 1.79769313486231570e+308d 123.456 0.0D
char 16 bits UNICODE ‘a’ ‘u0000’

No es necesario memorizar los valores, pero nos sirven de referencia para entender y usar la variable correcta de acuerdo a las necesidades de nuestra aplicación. La manera en la que se obtienen estos valores es aplicando la formula:

Rango Negativo:
-(2^n)/2
Rango Positivo:
[(2^n)/ 2] - 1  
donde n = valor en bits que la variable utiliza

Por ejemplo para obtener los rangos del tipo entero byte:

-(2^n)/ 2 → -(2^8)/2 → -256/2 → -128
[(2^n)/ 2] - 1 → [256/2] – 1 → 128 – 1 → 127

Cuando un número es representado en nuestro código se le llama literal. Por defecto, Java asume que se define una variable del tipo int como literal. En el siguiente ejemplo, el número es mayor que la capacidad de un int.

    long max = 12345679; // NO COMPILA
    double number = 213431; // NO COMPILA

En estos casos, debes añadir una letra l para los datos enteros y d para los datos con punto flotante despues de la literal. Se recomienda el uso de mayúsculas debido a que estas no se confunde con números.

    long max = 12345679L; // COMPILA
    double number = 213431D; //COMPILA

Otra manera de especificar números es cambiando la base. Java permite especificar digitos en muchos otros formatos:

  • Octal (dígitos 0-7): Se usa el número 0 como prefijo de la literal, por ejemplo 017.
  • Hexadecimal (dígitos 0-9 y letras A-F): Se usa el número 0 seguido de la letra x o X como prefijo, por ejemplo 0xFF y 0XA3
  • Binario (Dígitos 0-1): Se usa el número 0 seguido de la letra b o B como prefijo, por ejemplo 0b10 y 0B10010

Otra característica de Java es que puedes añadir a tus literales numéricas guiones bajos (_) para hacerlos más fácil de leer. Puedes añadir guiones bajos en cualquier parte del número, excepto al inicio y al final de este y en los a números con punto decimal, el guión no puede ir ni antes ni después del punto.

    double = _1000.0 // NO COMPILA
	double = 1000.0_; // NO COMPILA
	double notByDecimal = 1000_.00 // NO COMPILA
	Int million = 1_000_000 // COMPILA
	int anotherVarialble = 1_00_0.0_0; // COMPILA

Naming y Camel Case

Al crear nuestras variables debemos tener en consideración algunas reglas básicas:

  • Las variables son sensibles a las Mayúsculas y minúsculas
  • Deben comenzar con letra, ,$, o _
  • Las letras posteriores pueden ser letras, números, $ y _
  • Las constantes se escriben en mayúsculas y contienen _ como espacios
  • Por convención se debe usar la técnica “Camel Case”
  • Upper Camel Case para nombre de clases: NombreDeClase
  • Lower Camel Case para variables y métodos