Tipos de Datos Primitivos en Java: Guía Clara
Las variables son ubicaciones de memoria reservadas para almacenar valores. Al crear una variable, reservas espacio en memoria.
Según el tipo de dato, el sistema operativo asigna memoria y decide qué se puede almacenar. Asignando diferentes tipos, puedes almacenar enteros, decimales o caracteres.
Hay dos tipos de datos en Java:
- Tipos de Datos Primitivos
- Tipos de Datos de Referencia/Objeto
Tipos de Datos Primitivos
Java soporta ocho tipos primitivos. Son predefinidos por el lenguaje y nombrados por una palabra clave. Veamos cada uno en detalle.
byte
- Tipo de dato byte: entero de 8 bits con signo en complemento a dos
- Valor mínimo: -128 (-2⁷)
- Valor máximo: 127 (2⁷ -1)
- Valor por defecto: 0
- Usado para ahorrar espacio en arrays grandes, en lugar de enteros, ya que un byte es cuatro veces menor que un int.
- Ejemplo:
byte a = 100, byte b = -50
short
- Tipo short: entero de 16 bits con signo en complemento a dos
- Mínimo: -32,768 (-2¹⁵)
- Máximo: 32,767 (2¹⁵ -1)
- También usado para ahorrar memoria como byte. Un short es 2 veces menor que un int.
- Por defecto: 0.
- Ejemplo:
short s = 10000, short r = -20000
int
- Tipo int: entero de 32 bits con signo en complemento a dos.
- Mínimo: -2,147,483,648 (-2³¹)
- Máximo: 2,147,483,647 (2³¹ -1)
- Generalmente usado como tipo por defecto para valores enteros salvo preocupación por memoria.
- Por defecto: 0
- Ejemplo:
int a = 100000, int b = -200000
long
- Tipo long: entero de 64 bits con signo en complemento a dos
- Mínimo: -9,223,372,036,854,775,808 (-2⁶³)
- Máximo: 9,223,372,036,854,775,807 (2⁶³ -1)
- Usado cuando se necesita rango mayor que int
- Por defecto: 0L
- Ejemplo:
long a = 100000L, long b = -200000L
float
- Tipo float: punto flotante de precisión simple 32-bit IEEE 754
- Usado para ahorrar memoria en arrays grandes de números de punto flotante
- Por defecto: 0.0f
- Nunca usado para valores precisos como moneda
- Ejemplo:
float f1 = 234.5f
double
- Tipo double: punto flotante de doble precisión 64-bit IEEE 754
- Generalmente usado como tipo por defecto para valores decimales
- No debe usarse para valores precisos como moneda
- Por defecto: 0.0d
- Ejemplo:
double d1 = 123.4
boolean
- Tipo boolean: representa un bit de información
- Solo dos valores posibles: true y false
- Usado para banderas simples que rastrean condiciones true/false
- Por defecto: false
- Ejemplo:
boolean uno = true
char
- Tipo char: carácter Unicode de 16 bits
- Mínimo: '\u0000' (o 0)
- Máximo: '\uffff' (o 65,535 inclusive)
- Usado para almacenar cualquier carácter
- Ejemplo:
char letraA = 'A'
Tipos de Datos de Referencia
- Variables de referencia creadas usando constructores definidos de clases. Usadas para acceder a objetos. Declaradas de un tipo específico que no puede cambiar. Ejemplo: Empleado, Cachorro, etc.
- Objetos de clase y variables de array caen bajo tipo de dato de referencia.
- Valor por defecto de cualquier variable de referencia es null.
- Una variable de referencia puede referirse a cualquier objeto del tipo declarado o compatible.
- Ejemplo:
Animal animal = new Animal("jirafa");
Literales en Java
Un literal es una representación en código fuente de un valor fijo. Se representan directamente sin cómputo.
Los literales pueden asignarse a cualquier variable de tipo primitivo. Ejemplo:
byte a = 68; char a = 'A';
byte, int, long y short pueden expresarse en decimal (base 10), hexadecimal (base 16) u octal (base 8).
Prefijo 0 indica octal, y 0x hexadecimal. Ejemplo:
int decimal = 100; int octal = 0144; int hexa = 0x64;
Literales String en Java se especifican entre comillas dobles. Ejemplos:
Ejemplo
"Hola Mundo" "dos\nlineas" "\"Esto está entre comillas\""
String y char pueden contener cualquier carácter Unicode. Ejemplo:
char a = '\u0001'; String a = "\u0001";
Java soporta secuencias de escape especiales para String y char:
| Notación | Carácter representado |
|---|---|
| \n | Nueva línea (0x0a) |
| \r | Retorno de carro (0x0d) |
| \f | Salto de página (0x0c) |
| \b | Retroceso (0x08) |
| \s | Espacio (0x20) |
| \t | Tabulador |
| \" | Comilla doble |
| \' | Comilla simple |
| \\ | Barra invertida |
| \ddd | Carácter octal (ddd) |
| \uxxxx | Carácter UNICODE hexadecimal (xxxx) |
¿Qué Sigue?
Este capítulo explicó los tipos de datos. El siguiente tema explica los diferentes tipos de variables y su uso. Esto te dará buena comprensión de cómo usarlos en clases, interfaces, etc.
Java
- Dominando el tipo de dato char en C++: Declaración, ASCII y técnicas de conversión
- Variables, tipos de datos y constantes en C – Guía práctica
- Dominando conversión y casting de tipos en Python: Guía completa
- Tipos de Datos Primitivos en Java: Guía Completa con Ejemplos
- Dominar Operadores en Java: Tipos, Sintaxis y Ejemplos Prácticos
- Dominar Entrada y Salida en Java: Imprimir, Leer y Formatear Datos
- Dominando interfaces en Java: Conceptos, implementación y mejores prácticas
- Dominando la encapsulación en Java: Guía práctica de ocultamiento de datos
- Dominando Try‑with‑Resources en Java: Gestión automática de recursos explicada
- Anotaciones en Java explicadas: Tipos, ubicación y ejemplos prácticos
- Dominando el Casting de Tipos en Java: Desde Ensanchamiento hasta Estrechamiento y Más Allá