Programación

1º DAM/DAW - Curso 2024-2025

User Tools

Site Tools


apuntes:colecciones

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
apuntes:colecciones [2023/06/04 18:59] – [Interface Map] Santiago Faciapuntes:colecciones [2023/06/04 21:03] (current) – [Ejercicios] Santiago Faci
Line 334: Line 334:
 ===== Queues ===== ===== Queues =====
  
 +Define estructuras que pueden ser gestionadas como //FIFO// (First In First Out), lo que se conoce como colas.
 +
 +<figure>
 +{{ map.png }}
 +<caption>Colecciones Map</caption></figure>
 +
 +==== Interfaces Queue/Deque ====
 +
 +Define una serie de método que cualquier cola tiene que implementar
 +  * ''boolean add(e)''
 +  * ''E peek()''
 +  * ''E poll()''
 +
 +Además, la interfaz ''Deque'', que extiende a ''Queue'', y añade elementos para añadir y obtener elementos del inicio y el final:
 +  * ''void addFirst(e)''
 +  * ''void addLast(e)''
 +  * ''E getFirst()''
 +  * ''E getLast()''
 +  * ''E removeFirst()''
 +  * ''E removeLast()''
 +
 +==== ArrayDeque ====
 +
 +Representa una cola
 +
 +==== PriorityQueue ====
 +
 +Representa una cola donde con los elementos ordenador de forma natural o según el ''Comparator'' que se le pasa a su constructor
  
 ===== La clase HashMap ===== ===== La clase HashMap =====
Line 381: Line 409:
 <code java> <code java>
 Set<String> losTitulos = libros.keySet(); Set<String> losTitulos = libros.keySet();
-<code java>+</code>
  
 === Obtener el número de elementos del HashMap === === Obtener el número de elementos del HashMap ===
Line 396: Line 424:
 En Java, la clase ''LinkedList'' implementa el interfaz ''Queue'' y proporciona una cola FIFO a través de los métodos ''add(Object)'' y ''poll()'' para retirar el primer elemento. En Java, la clase ''LinkedList'' implementa el interfaz ''Queue'' y proporciona una cola FIFO a través de los métodos ''add(Object)'' y ''poll()'' para retirar el primer elemento.
  
-----+====== Ejercicios ====== 
 + 
 +{{ ejercicio.png}}
  
-====== Ejemplos ======+  - Elige el tipo de colección más adecuado para cada caso: 
 +    - Se quiere almacenar un listado de productos de una tienda online al recuperarlos de una base de datos 
 +    - Ahora tenemos que tener en cuenta que el usuario puede modificar los criterios de ordenación del listado anterior 
 +    - Un usuario va añadiendo productos a un carrito de la compra que más adelante tendrá que validar 
 +    - Un usuario añade varias direcciones de entrega asociadas a su perfil 
 +    - Recuperamos de la base de datos la información del perfil de un usuario (con sus múltiples direcciones de entrega)
  
 ---- ----
  
 (c) 2019-{{date>%Y}} Santiago Faci (c) 2019-{{date>%Y}} Santiago Faci
apuntes/colecciones.1685905147.txt.gz · Last modified: 2023/06/04 18:59 by Santiago Faci