Introduccion a Java primitives

1. Overview

Los tipos primitivos en Java son los bloques básicos de datos que no son objetos y almacenan valores simples. Hay 8 tipos primitivos incorporados en Java que se almacenan directamente en la memoria stack, lo que los hace más eficientes que los objetos.

2. Tipo de Datos Primitivos

2.1. int

El tipo int es el tipo de dato entero más comúnmente usado en Java.

Características:

// Ejemplos de declaración y uso de int
int edad = 25;
int poblacion = 1000000;
int numeroNegativo = -42;

// Operaciones básicas
int suma = 5 + 3;        // 8
int multiplicacion = 4 * 2;  // 8
int division = 10 / 3;    // 3 (división entera)

2.2. byte

El tipo byte es útil para ahorrar memoria cuando sabes que los valores estarán dentro de su rango.

Características:

// Ejemplos de byte
byte temperatura = 24;
byte nivelVolumen = 100;
byte numeroNegativo = -128;

2.3. short

El tipo short es útil cuando necesitas un rango mayor que byte pero menor que int.

Características:

// Ejemplos de short
short temperatura = 320;
short añoFabricacion = 2024;
short codigoProducto = -1234;

2.4. long

El tipo long se usa para números enteros muy grandes.

Características:

// Ejemplos de long
long poblacionMundial = 7800000000L;
long distanciaEspacial = 9223372036854775807L;
long numeroCuenta = 1234567890123456L;

2.5. float

El tipo float se usa para números decimales de precisión simple.

Características:

// Ejemplos de float
float precio = 19.99f;
float temperatura = 36.5f;
float gravedad = 9.81f;

2.6. double

El tipo double se usa para números decimales de precisión doble.

Características:

// Ejemplos de double
double pi = 3.141592653589793;
double masa = 0.00000000000234;
double distancia = 384400.5;

2.7. boolean

El tipo boolean representa valores de verdad.

Características:

// Ejemplos de boolean
boolean esMayorDeEdad = true;
boolean llueve = false;
boolean tieneLicencia = edad >= 18;

2.8. char

El tipo char representa un único carácter Unicode.

Características:

// Ejemplos de char
char letra = 'A';
char simbolo = '$';
char unicode = '\u0041'; // Representa 'A'

2.9. Overflow

El overflow ocurre cuando se excede el rango de un tipo primitivo.

// Ejemplos de overflow
byte pequeño = 127;
pequeño++;  // Resulta en -128

int maximo = Integer.MAX_VALUE;
maximo++;   // Resulta en Integer.MIN_VALUE

2.10. Autoboxing

Autoboxing es la conversión automática entre tipos primitivos y sus clases wrapper correspondientes.

// Ejemplos de autoboxing
Integer numero = 100;    // autoboxing
int valor = numero;      // unboxing

ArrayList<Integer> lista = new ArrayList<>();
lista.add(50);          // autoboxing automático

// Clases wrapper para cada tipo primitivo
Integer enteroObjeto = 10;
Double decimalObjeto = 10.5;
Boolean booleanoObjeto = true;
Character caracterObjeto = 'A';

3. Conclusion

Los tipos primitivos en Java son fundamentales para la programación eficiente:

Mejores Prácticas: