Modulo 4 Diploma Do Java
Modulo 4 Diploma Do Java
Actividad 4
Resumen
A partir de la información suministrada en la guía y con investigación complementaria se da
respuesta al significado de las siguientes estructuras de datos: Java.util.Map,
Java.util.HashMap. ¿Qué son los generics en Java?
Java.util.Map
Java.util.Map es una interfaz en Java que representa una colección de pares clave-
valor. Es útil para almacenar datos donde cada clave única está asociada a un valor.
Los mapas son ideales para situaciones en las que necesitamos realizar búsquedas
rápidas basadas en claves.
Permite aplicar una función dada a cada elemento de una colección y devolver una
nueva colección con los resultados. Esta función es muy útil para realizar
operaciones como la transformación o filtrado de datos en una colección.
La función map también se puede utilizar con expresiones lambda, lo que permite
aún más concisión en el código:
List<String> words = Arrays.asList("the", "quick", "brown", "fox");
Métodos principales:
A diferencia de las colecciones, que guardan los valores de forma ordenada y cuyo
índice es simple un número entero (int), los HashMap guardan sus valores con un
índice definido por el programador cómo por ejemplo un String.
La forma más fácil de crear un HashMap es usando su constructor con los genéricos
definidos:
Veamos qué sucede cuando nuestra clave cambia después de que la usamos para
almacenar un valor en un mapa.
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
IndiceHash that = (IndiceHash) o;
return Objects.equals(indice, that.indice);
}
@Override
public int hashCode() {
return Objects.hash(indice);
}
}
Y esta es la lógica:
elementos.setIndice(2);
System.out.println(elementos.get(clave));
Como podemos ver, ya no podemos obtener el valor correspondiente una vez que la
clave ha cambiado, en su lugar, se devuelve null. Esto se debe a que HashMap está
buscando en con el indice equivocado.
Métodos principales:
Los generics en Java son una característica que permite definir clases, interfaces y
métodos con parámetros de tipo. Esto proporciona una mayor seguridad de tipo en
tiempo de compilación, evitando errores de tipo y reduciendo la necesidad de
conversiones explícitas. Los generics hacen que el código sea más reutilizable y
legible.
Ejemplo:
list.add("Hola");
Listas:
Una lista es una estructura de datos lineal que almacena elementos en un orden
secuencial. Cada elemento tiene un índice asociado, lo que permite el acceso rápido
a los elementos.
Métodos principales:
• A diferencia de las pilas y colas, las listas permiten el acceso aleatorio a los
elementos.
• Las listas pueden contener duplicados y permiten elementos null.
Pilas:
Una pila es una estructura de datos LIFO (Last In, First Out), donde el último elemento
en entrar es el primero en salir. Es útil para tareas como la evaluación de expresiones,
retroceso en navegadores web, y llamadas recursivas.
Métodos principales:
Colas:
Una cola es una estructura de datos FIFO (First In, First Out), donde el primer
elemento en entrar es el primero en salir. Las colas son útiles para administrar tareas
en orden de llegada, como en sistemas de impresión o procesamiento de datos.
Métodos principales: