Una variable es un espacio en la memoria de tu computadora donde Java guarda un dato para usarlo en tu programa.
Cada variable tiene un nombre, un tipo y un valor. El tipo le dice a Java qué clase de dato vas a guardar.
Cómo se declara una variable en Java
La estructura básica para declarar una variable es:
tipoDeDato nombreVariable = valor;
Primero escribes el tipo de dato. Luego el nombre de la variable. Después el signo = y el valor inicial. Terminas con punto y coma.
Ejemplo sencillo:
int edad = 25;
Aquí int es el tipo, edad es el nombre y 25 es el valor.
Los cuatro tipos de datos más usados en Java
Java tiene muchos tipos de datos. En este nivel, necesitas conocer cuatro.
int — números enteros
int almacena números sin decimales. Sirve para cantidades, conteos y edades.
Rango válido: desde -2,147,483,648 hasta 2,147,483,647.
int unidadesEnAlmacen = 340;
int numeroDePedidos = 1_200;
Nota: puedes usar guion bajo _ para separar miles en el código. Java lo ignora. Mejora la lectura.
double — números con decimales
double almacena números con punto decimal. Es el tipo ideal para precios y medidas.
double precioCamisa = 599.90;
double descuento = 0.15;
Siempre usa double cuando trabajes con dinero en cálculos intermedios.
String — texto
String almacena cadenas de texto: nombres, descripciones, direcciones. Se escribe con mayúscula inicial. El valor va entre comillas dobles.
String nombreProducto = "Gansito Marinela";
String ciudad = "Guadalajara";
boolean — verdadero o falso
boolean solo acepta dos valores: true o false. Se usa para estados y condiciones.
boolean productoDisponible = true;
boolean envioGratis = false;
Tabla de referencia rápida
| Tipo | Qué guarda | Ejemplo de valor |
|---|---|---|
int |
Número entero | 150 |
double |
Número decimal | 349.99 |
String |
Texto | "Liverpool" |
boolean |
Verdadero/falso | true |
Ejemplos prácticos con contexto mexicano
Ejemplo 1 — Producto en Mercado Libre
Imagina que trabajas en el equipo técnico de Mercado Libre. Necesitas guardar datos de un producto.
public class ProductoMercadoLibre {
public static void main(String[] args) {
String nombreProducto = "Cafetera espresso";
int cantidadStock = 85;
double precio = 1_299.00;
boolean envioGratis = true;
System.out.println("Producto: " + nombreProducto);
System.out.println("Stock: " + cantidadStock);
System.out.println("Precio: $" + precio);
System.out.println("Envío gratis: " + envioGratis);
}
}
Salida en consola:
Producto: Cafetera espresso
Stock: 85
Precio: $1,299
Envío gratis: true
Observa cómo cada variable guarda exactamente un tipo de dato.
Ejemplo 2 — Nómina en una empresa
Supon que desarrollas un sistema de nómina para una empresa como FEMSA. Necesitas calcular el salario neto de un empleado.
public class Nomina {
public static void main(String[] args) {
String nombreEmpleado = "Ana Torres";
double salarioBruto = 18_500.00;
double porcentajeIMSS = 0.0275;
double descuentoIMSS = salarioBruto * porcentajeIMSS;
double salarioNeto = salarioBruto - descuentoIMSS;
System.out.println("Empleada: " + nombreEmpleado);
System.out.println("Salario bruto: $" + salarioBruto);
System.out.println("Descuento IMSS: $" + descuentoIMSS);
System.out.println("Salario neto: $" + salarioNeto);
}
}
Salida en consola:
Empleada: Ana Torres
Salario bruto: $18,500
Descuento IMSS: $508.75
Salario neto: $17,991.25
El descuento del IMSS es aproximado al 2.75% de la cuota obrera. Este ejemplo es solo ilustrativo.
Ejemplo 3 — Inventario de Bimbo
Ahora un caso con múltiples variables de distintos tipos.
public class InventarioBimbo {
public static void main(String[] args) {
String producto = "Pan de caja blanco";
int cajasPorPallet = 48;
int pallets = 12;
int totalCajas = cajasPorPallet * pallets;
double precioPorCaja = 38.50;
double valorTotalInventario = totalCajas * precioPorCaja;
boolean productoRefrigerado = false;
System.out.println("Producto: " + producto);
System.out.println("Total de cajas: " + totalCajas);
System.out.println("Valor total: $" + valorTotalInventario);
System.out.println("Requiere refrigeración: " + productoRefrigerado);
}
}
Salida en consola:
Producto: Pan de caja blanco
Total de cajas: 576
Valor total: $22,176
Requiere refrigeración: false
Aquí ves cómo puedes hacer operaciones matemáticas directamente con variables de tipo int y double.
Reglas para nombrar variables
Java tiene reglas estrictas para los nombres de variables.
- El nombre no puede empezar con un número.
1precioes inválido.precio1sí es válido. - El nombre no puede tener espacios. Usa camelCase:
precioProducto,nombreCliente. - Java distingue mayúsculas de minúsculas.
Precioyprecioson dos variables distintas. - No uses palabras reservadas de Java como nombre. No puedes llamar a una variable
int,classoreturn.
Convención camelCase: la primera palabra va en minúsculas. Cada palabra siguiente empieza con mayúscula.
// Correcto
int cantidadDeProductos = 10;
String nombreDelCliente = "Carlos Mendoza";
// Incorrecto
int CantidadDeProductos = 10; // empieza con mayúscula
String nombre del cliente = ""; // tiene espacios
Errores comunes
Error 1 — Mezclar tipos sin conversión
No puedes guardar un double directamente en un int sin convertirlo.
// Esto causa error de compilación
int precio = 299.99;
Java no acepta decimales en un int. Usa double si el valor tiene decimales, o convierte explícitamente con un cast: int precio = (int) 299.99;. El resultado sería 299, perdiendo los decimales.
Error 2 — Olvidar las comillas en String
// Incorrecto — Java busca una variable llamada Liverpool
String tienda = Liverpool;
// Correcto
String tienda = "Liverpool";
Siempre pon el texto entre comillas dobles cuando asignes un valor a un String.
Error 3 — Usar una variable antes de asignarle valor
// Esto causa error de compilación
int cantidad;
System.out.println(cantidad); // Error: variable no inicializada
Java exige que una variable tenga un valor antes de usarla. Siempre inicializa tus variables al declararlas.
Error 4 — Confundir = con comparación
En Java, el signo = asigna un valor. No compara. Para comparar, se usa ==.
int pedidos = 5; // asigna el valor 5
pedidos == 5; // compara (pero en esta línea no hace nada útil)
Este error se vuelve importante cuando estudies estructuras de control en lecciones posteriores.
Diferencia entre variables primitivas y String
En Java, los tipos int, double y boolean son tipos primitivos. Son los más simples y directos. Guardan el valor directamente.
String no es un tipo primitivo. Es una clase. Por eso empieza con mayúscula. Tiene capacidades especiales que verás más adelante, como concatenar texto con el operador +.
String saludo = "Hola, ";
String nombre = "María";
String mensaje = saludo + nombre; // resultado: "Hola, María"
System.out.println(mensaje);
La concatenación con + es una de las operaciones más frecuentes con String.
Constantes con final
A veces necesitas un valor que no debe cambiar durante la ejecución. Para eso usas la palabra clave final.
final double IVA = 0.16;
final String PAIS = "México";
Por convención, las constantes se escriben en MAYÚSCULAS con guion bajo para separar palabras. Si intentas cambiar el valor de una constante después de declararla, Java lanza un error de compilación.