Variables
Variables
Definición
Es por esto que este espacio o lugar dentro de la computadora donde guardamos
información, debe tener un nombre: para que la computadora pueda encontrarlo entre la
enorme cantidad de información que maneja.
En conclusión, una variable es un espacio en la memoria de la computadora, que tiene un
nombre propio, definido por el programador.
Como en matemática, una variable es un dato que tiene un nombre y cuyo valor puede
variar.
Una de las razones por las que usamos variables es que nos permiten reutilizar fácilmente
los valores en diferentes partes de nuestro código.
Cuando reutilizamos un valor, aparecerá en varios lugares en nuestro código.
Volver a escribir ese valor se vuelve tedioso, lo que conduce a errores.
847595593392818109495
847595593392818109495 * 2
847595593392818109495 / 4
En lugar de escribir el mismo número una y otra vez, podemos guardarlo en una variable
llamada my_number:
my_number = 847595593392818109495
my_number * 2
my_number / 4
La idea de la variable en programación, se asemeja mucho a lo que es una variable
matemática en una ecuación.
https://es.wikipedia.org/wiki/Ecuaci%C3%B3n
Una variable es un lugar de la memoria (ram) de la computadora para almacenar un dato y
a este espacio se le asigna un “nombre”.
A través de su nombre, dentro de un programa se puede acceder a este espacio para
obtener el valor de la variable
https://es.wikipedia.org/wiki/Variable_(programaci%C3%B3n)
Ejemplo
Tipo de sentencia
Declaración
[Tipo de dato] [nombre de variable]
● String varString
● Entero varNumero
● Booleano varBool
Asignación
[nombre variable] = [expresión]
● varString = “hola”
● varNumero = 4+5
● varBool = VERDADERO
● varNumero = varNumero + 1
y=2 + 2
x= y +1
z=x + y
x=5
Java tiene 8 tipos primitivos que se dividen en cuatro grupos principales: enteros, punto
flotante, caracteres y booleano. Cada uno de estos tipos tiene un tamaño fijo y un valor por
defecto.
Características y Usos:
● Eficiencia: Los tipos primitivos son muy eficientes en términos de almacenamiento y
velocidad porque están altamente optimizados por la JVM.
● Valor por defecto: Cada tipo primitivo tiene un valor por defecto, por ejemplo, 0 para
los tipos numéricos, false para boolean y '\u0000' (el carácter nulo) para char.
● No son objetos: A diferencia de los objetos, los primitivos no tienen métodos; son
valores puros sin propiedades ni comportamientos.
● Stack Allocation: Los tipos primitivos se almacenan en la pila, lo que los hace mucho
más rápidos que los objetos, que se almacenan en el montón.
Usar tipos de datos primitivos en lugar de objetos puede resultar en una aplicación más
beneficios de los objetos, como poder invocar métodos o ser null (excepto en el caso de
envoltorios o "wrappers" que permiten utilizarlos como objetos, por ejemplo, Integer para int,
Double para double, etc.). Estos envoltorios son parte de la API de Java Collections y
permiten trabajar con tipos primitivos en colecciones que solo soportan objetos.
La clase String en Java es una de las clases más utilizadas y representa una secuencia de
caracteres. Es decir, los objetos de tipo String contienen cadenas de texto. En Java, la clase
String es inmutable, lo que significa que una vez que se crea una instancia de un String, no
se puede cambiar su contenido.
Clase LocalDate
La clase LocalDate en Java representa una fecha sin información de hora o zona horaria.
Es parte de la API java.time, introducida en Java 8 para abordar las deficiencias de las
antiguas clases Date y Calendar. Aquí están los aspectos más importantes de LocalDate
junto con ejemplos de su uso:
Cada versión de Java, tenemos para ver su correspondiente link al que podemos acceder a
las consultas sobre el contenido de cualquier clase en Java.
https://docs.oracle.com/en/java/javase/17/docs/api/index.html
Por ejemplo, acá estamos viendo parte de los métodos de la clase LocalDate.
Clase Period
La clase Period en Java es utilizada para modelar una cantidad de tiempo en términos de
años, meses y días. Es muy útil para calcular diferencias entre fechas, como por ejemplo, la
edad de una persona. Aquí te muestro cómo puedes utilizar Period junto con LocalDate
para calcular la edad de alguien:
En este ejemplo:
Clase Date
La clase Date es una de las clases originales en Java para manejar fechas y tiempos,
mientras que LocalDate es parte de la moderna API de fecha y hora introducida en Java 8
(paquete java.time). Ambas clases se utilizan para trabajar con fechas, pero tienen
diferencias significativas en términos de diseño, funcionalidad y uso. Vamos a explorar
cómo se relacionan y cómo puedes convertir entre ellas.
Diferencias Clave
● Mutabilidad: Date es mutable, lo que significa que su valor puede cambiar después
de haber sido creado. Por el contrario, LocalDate es inmutable, lo que proporciona
una mayor seguridad en aplicaciones multihilo y evita cambios no deseados en el
valor de la fecha.
● Precisión: Date representa un punto específico en el tiempo, incluyendo fecha y
hora, y se mide en milisegundos desde la "epoch" Unix (1 de enero de 1970).
LocalDate, en cambio, representa solo una fecha (año, mes, día) sin hora ni zona
horaria.
● Uso: Date puede ser más difícil de manejar debido a su mutabilidad y su legado de
métodos obsoletos o poco claros. LocalDate forma parte de una API de fecha y hora
mucho más coherente y bien diseñada, que facilita el manejo de fechas.
Clase Calendar
● Antigüedad: Calendar es parte de las API más antiguas de Java (introducida en Java
1.1) y se encuentra en el paquete java.util.
● Mutabilidad: Es mutable, lo que significa que los objetos Calendar pueden cambiar
de estado. Esto puede llevar a problemas, especialmente en entornos multihilo,
donde las mutaciones inesperadas pueden causar errores difíciles de rastrear.
● Complejidad: Proporciona una amplia gama de funciones, pero su uso puede ser
complejo debido a su mutabilidad y a la necesidad de configurar explícitamente el
tiempo y la zona horaria.
● Zona horaria: Maneja explícitamente las zonas horarias y puede representar tanto la
fecha como la hora.
Salida de consola: