SlideShare una empresa de Scribd logo
C.F.P.E. JUAN XXIII – ALCORCÓN
                           Departamento de Desarrollo de Aplicaciones Informáticas


                                COLECCIONES

1.   Definición y ventajas

2.   Interfaces de Colección predefinidos

       •    Collection

       •    List

       •    Set

       •    Map

3.   Clases colección predefinidas

       •    Implementación de List: ArrayList, LinkedList

       •    Implementación de Set: HashSet

       •    Implementación de Map: HashMap

       •    Clases de soporte a las colecciones: Collections, Arrays.

4.   Colecciones personalizadas

       •    AbstractList

       •    AbstractSet


                                                                                     1
C.F.P.E. JUAN XXIII – ALCORCÓN
                                   Departamento de Desarrollo de Aplicaciones Informáticas


                           COLECCIONES. Concepto

•   Coleccion: objeto que agrupa múltiples elementos (objetos).

•   Utilidad: almacenar, recuperar, manipular conjuntos de datos.

•   Ejemplos reales de colecciones:
          asignaturas de un curso
          controles de una ventana
          Líneas de una factura
          Contactos de una agenda

•   Framework de colecciones: arquitectura unificada para representar y manipular
    colecciones:
        • Interfaces: especifican métodos para manipular colecciones, pero no su implementación.
        • Implementaciones: clases que implementan los interfaces de colección.
        • Algoritmos:
             –   codificados en métodos.
             –   Manipulan las estructuras de datos internas de las colecciones
             –   Son algoritmos habituales en estructuras estáticas y dinámicas
             –   ordenación, búsqueda binaria, inserción en listas, …

•   Ventaja: proporciona un métodos estándar de manipulación de grupos de objetos




                                                                                                   2
C.F.P.E. JUAN XXIII – ALCORCÓN
                                      Departamento de Desarrollo de Aplicaciones Informáticas


                               COLECCIONES. Interfaces


                                    Jerarquía de interfaces




–     Collection : Raiz de la jerarquía de interfaces, no tiene implementaciones.
–     List: También llamadas secuencias. Colecciónes indexadas. Admiten duplicados.
–     Set: Representación matemática de conjunto. No indexada. No admite duplicados.
–     SortedSet : Conjuntos ordenados.
–     Queue: Representaciones de estructuras FIFO-LIFO. No admite nulos.
–     Map: Almacenamientos de parejas valor-clave. La clave equivale al índice. No admite
      clasves duplicadas. También se conocen como diccionarios.
–     SortedMap: Mapa ordenado según sus claves.


    Referencia completa: http://download.oracle.com/javase/6/docs/technotes/guides/collections/index.html
                                                                                                            3
C.F.P.E. JUAN XXIII – ALCORCÓN
                                  Departamento de Desarrollo de Aplicaciones Informáticas


                           COLECCIONES. Interfaces
                                Interface Collection




–   size() : número de elementos.
–   isEmpty () : ´devuelve true si la colección no tiene elementos
–   contains ( …) : true si existe un elemento e tal que (o==null) ? e==null : o.equals(e)
–   add (... ): añade el elemento a la colección. Devulve true si se agregó.
–   remove ( ... ) : elimina el objeto de la lista si existe.
–   iterator ( ) : devuelve un objeto que implementa Iterator.
–   //optional: lanzan “UnsupportedOperationException” si no estan implementados
–   //Bulk operations: métodos que “operan de colección a colección” en una sola llamada

                                                                                             4
C.F.P.E. JUAN XXIII – ALCORCÓN
                                       Departamento de Desarrollo de Aplicaciones Informáticas


                               COLECCIONES. Interfaces
                                             Interface List




–   get( … ) : devuelve el elemento en la posición index. 0 <= index < size()
–   set( … ) : coloca elemento en la posición index. 0 <= index < size()
–   add( … ): inserta al final
–   add (index, element): inserta en la posicion index desplazando si es necesario. 0 <= index <= size()
–   remove (index) : Devuelve y elimina de la lista elemento en la posicion index. 0 <= index < size()
–   addAll (index, Collection): añade la colección a la lista a partir de la posición expecificada.
–   int indexOf ( ): devuelve la posición del primer elemento igual o.
–   int indexOf ( ): devuelve la posición del último elemento igual o.
–   List< E > subList (from, to) : devuelve una sublista desde la posicion “from” hasta la posición “to” exclusive.


                                                                                                                      5
C.F.P.E. JUAN XXIII – ALCORCÓN
                                 Departamento de Desarrollo de Aplicaciones Informáticas


                          COLECCIONES. Interfaces
                                        Interface Set




–   Todos los métodos tienen el mismo comportamiento que el interface Collection, salvo:

                 Los métodos add NO admiten insertar elementos DUPLICADOS .




                                                                                           6
C.F.P.E. JUAN XXIII – ALCORCÓN
                                              Departamento de Desarrollo de Aplicaciones Informáticas


                                     COLECCIONES. Interfaces
                                                   Interface Map




–   Mapa: es un objeto que almacena parejas key-value.
–   No contiene keys (claves) duplicadas
–   Cada clave debe tener al menos un valor.
–   Modela el concepto de “función matemática”.
–   K: Tipo de dato de la clave de cada elemento.
–   V: Tipo de dato del valor de cada elemento.




                                                                                                        7
C.F.P.E. JUAN XXIII – ALCORCÓN
                                            Departamento de Desarrollo de Aplicaciones Informáticas


                                     COLECCIONES. Interfaces
                                                 Interface Map
– V put(K key, V value): asocia value a key. Si ya existia Key sustituye value. Devuelve value antiguo.
– V get(Object key): recupera el value asociado a key.
– V remove(Object key): elimina el “mapeo” (clave-valor) asociado a la key.
– boolean containsKey(Object key): devuelve true si el mapa contiene la clave
– boolean containsValue(Object value); devuelve true si el mapa contiene el valor (equals).
– int size(): devuelve el número de elementos contenidos en el mapa.
– boolean isEmpty(): devuelve true si el mapa no contiene elementos.


– // Bulk operations
– void putAll(Map<? extends K, ? extends V> m): utiliza put para todos los mapeos del parametro.
– void clear(): borra todos los elementos del mapa


– // Collection Views
– public Set<K> keySet(); devuelve un Set de “claves” (key).
– public Collection<V> values(); devuelve una Colección de Values (valores).
– public Set<Map.Entry<K,V>> entrySet(): devuelve un Set de objetos que implementan entradas (parejas
              clave-valor o Map.Entry) del mapa.
– // Interface para entrySet
– public interface Entry {
– K getKey();
– V getValue();
– V setValue(V value);
–}
                                                                                                          8
C.F.P.E. JUAN XXIII – ALCORCÓN
                               Departamento de Desarrollo de Aplicaciones Informáticas


             COLECCIONES. Implementaciones. List

•   ArrayList:
        • Almacena internamente un vector dinámico.
        • Tiempo constante en acceso a los elementos. Se calcula la posición.
        • Borrados mas costosos.

        • Métodos específicos:
            •   ArrayList (capacity): construye el array con una capacidad inicial

            •   ArrayList(Collection): crea el array list desde una colección

            •   ensureCapacity (capacity): incrementa la capacidad si es necesario hasta capacity.

            •   trimToSize(). Reduce la capacidad hasta el número de elementos (size).

•   Vector: Implementación equivalente a ArrayList, pero sincronizada.

•   LinkedList:
        • Almacena los elementos en una lista enlazada
        • Tiempo variable en acceso a los elementos. Busqueda secuencia.
        • Tiempo constante en operaciones de inserción y borrado.
        • Implementa los interfaces List, Queue y Deque
        • Se puede emplear crear estructuras FIFO (Cola) y LIFO (Pila).



                                                                                                     9
C.F.P.E. JUAN XXIII – ALCORCÓN
                              Departamento de Desarrollo de Aplicaciones Informáticas


              COLECCIONES. Implementaciones. Map

•   Map:
       •    Implementa todos los métodos del Interface Map, incluso los opcionales.
       •    Admite claves y valores nulos.
       •    Internamente almacena los elementos en un array de objetos Map.Entry.
       •    Proporciona tiempo de acceso constante con las funciones get, put utilizando
            para ello la función hash.
        •   Capacity: Número de “huecos” para ubicar las Map.Entry.
        •   Factor de carga: % de llenado del mapa antes que crezca su capacidad. Por
            defecto 75%.
        •   Implementación no sincronizada.
        •   Multimapa: Mapa cuyos values son colecciones.


•   TreeMap: Mapa que almacena sus elementos en una estructura Arbol.



•   LinkedHashMap: Mapa que almacena sus elementos en una lista enlazada.




                                                                                           10
C.F.P.E. JUAN XXIII – ALCORCÓN
                                Departamento de Desarrollo de Aplicaciones Informáticas


                COLECCIONES. Implementaciones. Set

•   HashSet:
       • Internamente envuelve un HasMap para evitar que los elementos se repitan
       • No garantiza el orden de los elementos.
       • Es una implementación no sincronizada
       • Métodos específicos:
            •    HashSet ( ): Crea un Set vacío.
            •    HahsSet (Collection ): Crea un HashSet a partir de una Collection.
            •    HashSet (InitialCapacity): Crea un HashSet con una capacidad inicial.




•   TreeSet: Almacena un Set en un árbol.



•   LinkedHashSet: Almacena un Set en una lista enlazada.




                                                                                          11
C.F.P.E. JUAN XXIII – ALCORCÓN
                                Departamento de Desarrollo de Aplicaciones Informáticas


                   COLECCIONES. Clase Collections

•   Collections: Clase que proporciona métodos para manipular colecciones.

•   Metodos más comunes
        •   addAll : Añade a una colección una lista de elementos que se pasan por parámetro.
        •   binarySearch: Realiza busqueda binaria. Permite pasar por parámetro un Comparator.
        •   disjoint : devuelve true si dos colecciones (parametros) no tienen elementos en común.
        •   fill: reemplaza todos los elementos de la colección por un objeto especificado (parámetro)
        •   frecuency: devuelve el numero de repeticiones de un objeto dentro de una colección
        •   list: devuelve un ArrayList con los elementos de la colección.
        •   max: devuelve el mayor objeto de la colección. Se puede pasar un Comparador por parámetro.
        •   min: devuelve el menor objeto de la colección.
        •   newSetFromMap: Devuelve un set “envolviendo” el mapa enviado por parámetro.
        •   replaceAll: reemplaza cada ocurrencia de una valor de la colección por un valor nuevo.
        •   shuffle: permita aleatoriamente los elementos de una lista.
        •   sort: ordena los elementos de la lista. Se puede pasar un comparador por parámetro.
        •   swap: intercambia dos elementos de una lista. Se indican las posiciones por parámetro.




                                                                                                         12
C.F.P.E. JUAN XXIII – ALCORCÓN
                                   Departamento de Desarrollo de Aplicaciones Informáticas


             COLECCIONES. Colecciones personalizadas

•   Custom Collections: Son colecciones que implementan los interfaces del Framework de colecciones
    o heredan de clases colección abstractas.

•   Clases abstractas de colección: Incorporan implementaciones de los métodos de interfaces de
    colección pero no todos. Las clases personalizadas pueden reutilizar su implementación heredando de
    ellas.

         • AbstractCollection : Una colección que no es ni Set, ni List. Como mínimo proporcionar
             iterator y size().

         • AbstractSet: Implementa un Set. Su uso es idéntico a AbstractCollection.

         • AbstractList: Una lista que envuelve un espacio de almacenamiento aleatorio (un array).

                •   Acceso a los elementos: get (obligatorio). set, remove y add opcionales.

         • AbstractSequentialList : Una lista que envuelve un espacio de almacenamiento de acceso
             secuencial (lista enlazada).

                •   Como mínimo proporcionar listIterator y el método size().

         • AbstractQueue: Como mínimo debe proporcionar offer, peek, poll, y size( ) y un iterator que
             soporte remove.

         • AbstractMap: Como mínimo debe proporcionar la vista entrySet. Si es modificable
             proporcionar también put.


                                                                                                          13
C.F.P.E. JUAN XXIII – ALCORCÓN
             Departamento de Desarrollo de Aplicaciones Informáticas


COLECCIONES. Colecciones personalizadas

  Clase personalizada heredando de AbstractList




                                                                       14

Más contenido relacionado

La actualidad más candente

Estructura de datos. listas, pilas y colas
Estructura de datos. listas, pilas y colasEstructura de datos. listas, pilas y colas
Estructura de datos. listas, pilas y colas
IARINAIA
 
Pilas Colas
Pilas ColasPilas Colas
Python Pilas y Colas
Python Pilas y ColasPython Pilas y Colas
Python Pilas y Colas
Juan Astudillo
 
Colas
ColasColas
Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfija
Omarzingm
 
Saiymari colas, filas y nos e que otra cosa
Saiymari colas, filas y nos e que otra cosaSaiymari colas, filas y nos e que otra cosa
Saiymari colas, filas y nos e que otra cosa
Marielys Rodriguez Gutierrez
 
Estructura de datos I pilas
Estructura de datos I pilasEstructura de datos I pilas
Estructura de datos I pilas
geova666
 
Aedii pilas colas_y_recursividad_teoria_sem07_a_sem10
Aedii pilas colas_y_recursividad_teoria_sem07_a_sem10Aedii pilas colas_y_recursividad_teoria_sem07_a_sem10
Aedii pilas colas_y_recursividad_teoria_sem07_a_sem10
chrisflores001
 
Pilas En C++
Pilas En C++Pilas En C++
Pilas En C++
maria alejandra
 
Funcionamiento de un pila
Funcionamiento de un pilaFuncionamiento de un pila
Funcionamiento de un pila
jefer
 
Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)
Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)
Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)
Eli Diaz
 
Java pilas (Stacks) y colas (Queues)
Java pilas (Stacks) y colas (Queues)Java pilas (Stacks) y colas (Queues)
Java pilas (Stacks) y colas (Queues)
Juan Astudillo
 
Pilas y colas
Pilas y colasPilas y colas
Pilas y colas
Eliezer Cordova
 
Fila,pila y cola ..
Fila,pila y cola ..Fila,pila y cola ..
Fila,pila y cola ..
Evanyeline Brito Rojas
 
10. aplicaciones de las pilas
10. aplicaciones de las pilas10. aplicaciones de las pilas
10. aplicaciones de las pilas
Andreita Enriquez
 
Estructura de datos: lista, pilas y colas
Estructura de datos: lista, pilas y colasEstructura de datos: lista, pilas y colas
Estructura de datos: lista, pilas y colas
Huascar Génere
 
Listas Pilas Colas
Listas Pilas ColasListas Pilas Colas
Listas Pilas Colas
Marrodriguez007
 
Tema 6 colecciones por gio
Tema 6   colecciones por gioTema 6   colecciones por gio
Tema 6 colecciones por gio
Robert Wolf
 

La actualidad más candente (18)

Estructura de datos. listas, pilas y colas
Estructura de datos. listas, pilas y colasEstructura de datos. listas, pilas y colas
Estructura de datos. listas, pilas y colas
 
Pilas Colas
Pilas ColasPilas Colas
Pilas Colas
 
Python Pilas y Colas
Python Pilas y ColasPython Pilas y Colas
Python Pilas y Colas
 
Colas
ColasColas
Colas
 
Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfija
 
Saiymari colas, filas y nos e que otra cosa
Saiymari colas, filas y nos e que otra cosaSaiymari colas, filas y nos e que otra cosa
Saiymari colas, filas y nos e que otra cosa
 
Estructura de datos I pilas
Estructura de datos I pilasEstructura de datos I pilas
Estructura de datos I pilas
 
Aedii pilas colas_y_recursividad_teoria_sem07_a_sem10
Aedii pilas colas_y_recursividad_teoria_sem07_a_sem10Aedii pilas colas_y_recursividad_teoria_sem07_a_sem10
Aedii pilas colas_y_recursividad_teoria_sem07_a_sem10
 
Pilas En C++
Pilas En C++Pilas En C++
Pilas En C++
 
Funcionamiento de un pila
Funcionamiento de un pilaFuncionamiento de un pila
Funcionamiento de un pila
 
Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)
Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)
Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)
 
Java pilas (Stacks) y colas (Queues)
Java pilas (Stacks) y colas (Queues)Java pilas (Stacks) y colas (Queues)
Java pilas (Stacks) y colas (Queues)
 
Pilas y colas
Pilas y colasPilas y colas
Pilas y colas
 
Fila,pila y cola ..
Fila,pila y cola ..Fila,pila y cola ..
Fila,pila y cola ..
 
10. aplicaciones de las pilas
10. aplicaciones de las pilas10. aplicaciones de las pilas
10. aplicaciones de las pilas
 
Estructura de datos: lista, pilas y colas
Estructura de datos: lista, pilas y colasEstructura de datos: lista, pilas y colas
Estructura de datos: lista, pilas y colas
 
Listas Pilas Colas
Listas Pilas ColasListas Pilas Colas
Listas Pilas Colas
 
Tema 6 colecciones por gio
Tema 6   colecciones por gioTema 6   colecciones por gio
Tema 6 colecciones por gio
 

Similar a Unidad 6. colecciones

14 colecciones
14 colecciones14 colecciones
14 colecciones
victdiazm
 
Presentación1
Presentación1Presentación1
Presentación1
JOSE_BLANCO
 
Informe Poo
Informe PooInforme Poo
Listas dinámicas y programación de objetos en java
Listas dinámicas y programación de objetos  en javaListas dinámicas y programación de objetos  en java
Listas dinámicas y programación de objetos en java
apssoftwaredegestion
 
Estructura de datos pilas y colas
Estructura de datos pilas y colasEstructura de datos pilas y colas
Estructura de datos pilas y colas
Eder Efrain Nieves Coronado
 
Colecciones
ColeccionesColecciones
Unidad 4. interfaces
Unidad 4. interfacesUnidad 4. interfaces
Unidad 4. interfaces
Roberto Moreno Doñoro
 
Preguntas d eloy
Preguntas d eloyPreguntas d eloy
Preguntas d eloy
Isack Lugo Juarez
 
Introduccion ilwis
Introduccion ilwisIntroduccion ilwis
Introduccion ilwis
manalva
 
Programacion
ProgramacionProgramacion
Programacion
Jhon Trujillo
 
8 introduccion colecciones
8 introduccion colecciones8 introduccion colecciones
8 introduccion colecciones
Claribel Eusebio Nolasco
 
Apache spark meetup
Apache spark meetupApache spark meetup
Apache spark meetup
Israel Gaytan
 
Procesamiento de datos a gran escala con Apache Spark
Procesamiento de datos a gran escala con Apache SparkProcesamiento de datos a gran escala con Apache Spark
Procesamiento de datos a gran escala con Apache Spark
Software Guru
 
Estructuras de datos
Estructuras de datosEstructuras de datos
Estructuras de datos
Kemuel Sanchez
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
MaxDLeon
 
Programacion orientada a objetos Java
Programacion orientada a objetos JavaProgramacion orientada a objetos Java
Programacion orientada a objetos Java
Alexander Ramirez Melendez
 
Unidad i poo avanzada
Unidad i   poo avanzadaUnidad i   poo avanzada
Unidad i poo avanzada
Jose Angel Rodriguez
 
Tecnologias orientadas a aspectos en .NET 1.1
Tecnologias orientadas a aspectos en .NET 1.1Tecnologias orientadas a aspectos en .NET 1.1
Tecnologias orientadas a aspectos en .NET 1.1
Cristobal Costa Soria
 
JAVA OO - TEMA 08 - COLECCIONES
JAVA OO - TEMA 08 - COLECCIONESJAVA OO - TEMA 08 - COLECCIONES
JAVA OO - TEMA 08 - COLECCIONES
Eric Gustavo Coronel Castillo
 
Exposicion
ExposicionExposicion
Exposicion
Evelynsuquillo1
 

Similar a Unidad 6. colecciones (20)

14 colecciones
14 colecciones14 colecciones
14 colecciones
 
Presentación1
Presentación1Presentación1
Presentación1
 
Informe Poo
Informe PooInforme Poo
Informe Poo
 
Listas dinámicas y programación de objetos en java
Listas dinámicas y programación de objetos  en javaListas dinámicas y programación de objetos  en java
Listas dinámicas y programación de objetos en java
 
Estructura de datos pilas y colas
Estructura de datos pilas y colasEstructura de datos pilas y colas
Estructura de datos pilas y colas
 
Colecciones
ColeccionesColecciones
Colecciones
 
Unidad 4. interfaces
Unidad 4. interfacesUnidad 4. interfaces
Unidad 4. interfaces
 
Preguntas d eloy
Preguntas d eloyPreguntas d eloy
Preguntas d eloy
 
Introduccion ilwis
Introduccion ilwisIntroduccion ilwis
Introduccion ilwis
 
Programacion
ProgramacionProgramacion
Programacion
 
8 introduccion colecciones
8 introduccion colecciones8 introduccion colecciones
8 introduccion colecciones
 
Apache spark meetup
Apache spark meetupApache spark meetup
Apache spark meetup
 
Procesamiento de datos a gran escala con Apache Spark
Procesamiento de datos a gran escala con Apache SparkProcesamiento de datos a gran escala con Apache Spark
Procesamiento de datos a gran escala con Apache Spark
 
Estructuras de datos
Estructuras de datosEstructuras de datos
Estructuras de datos
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Programacion orientada a objetos Java
Programacion orientada a objetos JavaProgramacion orientada a objetos Java
Programacion orientada a objetos Java
 
Unidad i poo avanzada
Unidad i   poo avanzadaUnidad i   poo avanzada
Unidad i poo avanzada
 
Tecnologias orientadas a aspectos en .NET 1.1
Tecnologias orientadas a aspectos en .NET 1.1Tecnologias orientadas a aspectos en .NET 1.1
Tecnologias orientadas a aspectos en .NET 1.1
 
JAVA OO - TEMA 08 - COLECCIONES
JAVA OO - TEMA 08 - COLECCIONESJAVA OO - TEMA 08 - COLECCIONES
JAVA OO - TEMA 08 - COLECCIONES
 
Exposicion
ExposicionExposicion
Exposicion
 

Más de Roberto Moreno Doñoro

21 bibsw tablasyotros
21 bibsw tablasyotros21 bibsw tablasyotros
21 bibsw tablasyotros
Roberto Moreno Doñoro
 
20 curvaselipticas
20 curvaselipticas20 curvaselipticas
20 curvaselipticas
Roberto Moreno Doñoro
 
19 protocoloscripto
19 protocoloscripto19 protocoloscripto
19 protocoloscripto
Roberto Moreno Doñoro
 
18 correoseguro
18 correoseguro18 correoseguro
18 correoseguro
Roberto Moreno Doñoro
 
17 certdigitalespkcs
17 certdigitalespkcs17 certdigitalespkcs
17 certdigitalespkcs
Roberto Moreno Doñoro
 
16 autenticafirma
16 autenticafirma16 autenticafirma
16 autenticafirma
Roberto Moreno Doñoro
 
15 funcioneshash
15 funcioneshash15 funcioneshash
15 funcioneshash
Roberto Moreno Doñoro
 
14 cifraasimetrica
14 cifraasimetrica14 cifraasimetrica
14 cifraasimetrica
Roberto Moreno Doñoro
 
13 ciframochilas
13 ciframochilas13 ciframochilas
13 ciframochilas
Roberto Moreno Doñoro
 
12 cifrasimetrica
12 cifrasimetrica12 cifrasimetrica
12 cifrasimetrica
Roberto Moreno Doñoro
 
11 cifraflujo
11 cifraflujo11 cifraflujo
11 cifraflujo
Roberto Moreno Doñoro
 
10 ciframoderna
10 ciframoderna10 ciframoderna
10 ciframoderna
Roberto Moreno Doñoro
 
09 cifraclasica
09 cifraclasica09 cifraclasica
09 cifraclasica
Roberto Moreno Doñoro
 
08 compalgoritmos
08 compalgoritmos08 compalgoritmos
08 compalgoritmos
Roberto Moreno Doñoro
 
07 teorianumeros
07 teorianumeros07 teorianumeros
07 teorianumeros
Roberto Moreno Doñoro
 
06 teoriainfo
06 teoriainfo06 teoriainfo
06 teoriainfo
Roberto Moreno Doñoro
 
05 gestionseg
05 gestionseg05 gestionseg
05 gestionseg
Roberto Moreno Doñoro
 
04 calidadinfo
04 calidadinfo04 calidadinfo
04 calidadinfo
Roberto Moreno Doñoro
 
02 breveintrocripto
02 breveintrocripto02 breveintrocripto
02 breveintrocripto
Roberto Moreno Doñoro
 
01 presentalibro
01 presentalibro01 presentalibro
01 presentalibro
Roberto Moreno Doñoro
 

Más de Roberto Moreno Doñoro (20)

21 bibsw tablasyotros
21 bibsw tablasyotros21 bibsw tablasyotros
21 bibsw tablasyotros
 
20 curvaselipticas
20 curvaselipticas20 curvaselipticas
20 curvaselipticas
 
19 protocoloscripto
19 protocoloscripto19 protocoloscripto
19 protocoloscripto
 
18 correoseguro
18 correoseguro18 correoseguro
18 correoseguro
 
17 certdigitalespkcs
17 certdigitalespkcs17 certdigitalespkcs
17 certdigitalespkcs
 
16 autenticafirma
16 autenticafirma16 autenticafirma
16 autenticafirma
 
15 funcioneshash
15 funcioneshash15 funcioneshash
15 funcioneshash
 
14 cifraasimetrica
14 cifraasimetrica14 cifraasimetrica
14 cifraasimetrica
 
13 ciframochilas
13 ciframochilas13 ciframochilas
13 ciframochilas
 
12 cifrasimetrica
12 cifrasimetrica12 cifrasimetrica
12 cifrasimetrica
 
11 cifraflujo
11 cifraflujo11 cifraflujo
11 cifraflujo
 
10 ciframoderna
10 ciframoderna10 ciframoderna
10 ciframoderna
 
09 cifraclasica
09 cifraclasica09 cifraclasica
09 cifraclasica
 
08 compalgoritmos
08 compalgoritmos08 compalgoritmos
08 compalgoritmos
 
07 teorianumeros
07 teorianumeros07 teorianumeros
07 teorianumeros
 
06 teoriainfo
06 teoriainfo06 teoriainfo
06 teoriainfo
 
05 gestionseg
05 gestionseg05 gestionseg
05 gestionseg
 
04 calidadinfo
04 calidadinfo04 calidadinfo
04 calidadinfo
 
02 breveintrocripto
02 breveintrocripto02 breveintrocripto
02 breveintrocripto
 
01 presentalibro
01 presentalibro01 presentalibro
01 presentalibro
 

Último

Mundo ABC Examen 1 Grado- Tercer Trimestre.pdf
Mundo ABC Examen 1 Grado- Tercer Trimestre.pdfMundo ABC Examen 1 Grado- Tercer Trimestre.pdf
Mundo ABC Examen 1 Grado- Tercer Trimestre.pdf
ViriEsteva
 
CONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIA
CONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIACONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIA
CONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIA
ginnazamudio
 
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptxNuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
lautyzaracho4
 
Maristella Svampa-La sociedad excluyente.pdf
Maristella Svampa-La sociedad excluyente.pdfMaristella Svampa-La sociedad excluyente.pdf
Maristella Svampa-La sociedad excluyente.pdf
belbarcala
 
Radicación con expresiones algebraicas para 9no grado
Radicación con expresiones algebraicas para 9no gradoRadicación con expresiones algebraicas para 9no grado
Radicación con expresiones algebraicas para 9no grado
perezducasaarmando
 
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docxRETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
100078171
 
LA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJE
LA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJELA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJE
LA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJE
jecgjv
 
Sesión: El espiritismo desenmascarado.pdf
Sesión: El espiritismo desenmascarado.pdfSesión: El espiritismo desenmascarado.pdf
Sesión: El espiritismo desenmascarado.pdf
https://gramadal.wordpress.com/
 
EVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptx
EVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptxEVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptx
EVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptx
Victor Elizalde P
 
1° T3 Examen Zany de primer grado compl
1° T3 Examen Zany  de primer grado compl1° T3 Examen Zany  de primer grado compl
1° T3 Examen Zany de primer grado compl
ROCIORUIZQUEZADA
 
Guia Practica de ChatGPT para Docentes Ccesa007.pdf
Guia Practica de ChatGPT para Docentes Ccesa007.pdfGuia Practica de ChatGPT para Docentes Ccesa007.pdf
Guia Practica de ChatGPT para Docentes Ccesa007.pdf
Demetrio Ccesa Rayme
 
Examen Lengua y Literatura EVAU Andalucía.pdf
Examen Lengua y Literatura EVAU Andalucía.pdfExamen Lengua y Literatura EVAU Andalucía.pdf
Examen Lengua y Literatura EVAU Andalucía.pdf
20minutos
 
Planificación Ejemplo con la metodología TPACK
Planificación Ejemplo con la metodología  TPACKPlanificación Ejemplo con la metodología  TPACK
Planificación Ejemplo con la metodología TPACK
ssusera6697f
 
CUENTOS EN MAYÚSCULAS PARA APRENDER A LEER.pdf
CUENTOS EN MAYÚSCULAS PARA APRENDER A LEER.pdfCUENTOS EN MAYÚSCULAS PARA APRENDER A LEER.pdf
CUENTOS EN MAYÚSCULAS PARA APRENDER A LEER.pdf
Inslvarez5
 
Power Point: El espiritismo desenmascarado
Power Point: El espiritismo desenmascaradoPower Point: El espiritismo desenmascarado
Power Point: El espiritismo desenmascarado
https://gramadal.wordpress.com/
 
Evaluacion del tercer trimestre del 2023-2024
Evaluacion del tercer trimestre del 2023-2024Evaluacion del tercer trimestre del 2023-2024
Evaluacion del tercer trimestre del 2023-2024
israelsouza67
 
Las Tecnologias Digitales en los Aprendizajesdel Siglo XXI UNESCO Ccesa007.pdf
Las Tecnologias Digitales en los Aprendizajesdel Siglo XXI  UNESCO Ccesa007.pdfLas Tecnologias Digitales en los Aprendizajesdel Siglo XXI  UNESCO Ccesa007.pdf
Las Tecnologias Digitales en los Aprendizajesdel Siglo XXI UNESCO Ccesa007.pdf
Demetrio Ccesa Rayme
 
Examen de la EvAU 2024 en Navarra Latín.
Examen de la EvAU 2024 en Navarra Latín.Examen de la EvAU 2024 en Navarra Latín.
Examen de la EvAU 2024 en Navarra Latín.
amayaltc18
 
CORREOS SEGUNDO 2024 HONORIO DELGADO ESPINOZA
CORREOS SEGUNDO 2024 HONORIO DELGADO ESPINOZACORREOS SEGUNDO 2024 HONORIO DELGADO ESPINOZA
CORREOS SEGUNDO 2024 HONORIO DELGADO ESPINOZA
Sandra Mariela Ballón Aguedo
 

Último (20)

Mundo ABC Examen 1 Grado- Tercer Trimestre.pdf
Mundo ABC Examen 1 Grado- Tercer Trimestre.pdfMundo ABC Examen 1 Grado- Tercer Trimestre.pdf
Mundo ABC Examen 1 Grado- Tercer Trimestre.pdf
 
CONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIA
CONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIACONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIA
CONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIA
 
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptxNuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
 
Maristella Svampa-La sociedad excluyente.pdf
Maristella Svampa-La sociedad excluyente.pdfMaristella Svampa-La sociedad excluyente.pdf
Maristella Svampa-La sociedad excluyente.pdf
 
Radicación con expresiones algebraicas para 9no grado
Radicación con expresiones algebraicas para 9no gradoRadicación con expresiones algebraicas para 9no grado
Radicación con expresiones algebraicas para 9no grado
 
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docxRETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
 
LA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJE
LA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJELA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJE
LA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJE
 
Sesión: El espiritismo desenmascarado.pdf
Sesión: El espiritismo desenmascarado.pdfSesión: El espiritismo desenmascarado.pdf
Sesión: El espiritismo desenmascarado.pdf
 
EVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptx
EVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptxEVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptx
EVALUACION ESTUDIANTIL 2023-2024 Ecuador - Costa.pptx
 
1° T3 Examen Zany de primer grado compl
1° T3 Examen Zany  de primer grado compl1° T3 Examen Zany  de primer grado compl
1° T3 Examen Zany de primer grado compl
 
Guia Practica de ChatGPT para Docentes Ccesa007.pdf
Guia Practica de ChatGPT para Docentes Ccesa007.pdfGuia Practica de ChatGPT para Docentes Ccesa007.pdf
Guia Practica de ChatGPT para Docentes Ccesa007.pdf
 
Examen Lengua y Literatura EVAU Andalucía.pdf
Examen Lengua y Literatura EVAU Andalucía.pdfExamen Lengua y Literatura EVAU Andalucía.pdf
Examen Lengua y Literatura EVAU Andalucía.pdf
 
Planificación Ejemplo con la metodología TPACK
Planificación Ejemplo con la metodología  TPACKPlanificación Ejemplo con la metodología  TPACK
Planificación Ejemplo con la metodología TPACK
 
CUENTOS EN MAYÚSCULAS PARA APRENDER A LEER.pdf
CUENTOS EN MAYÚSCULAS PARA APRENDER A LEER.pdfCUENTOS EN MAYÚSCULAS PARA APRENDER A LEER.pdf
CUENTOS EN MAYÚSCULAS PARA APRENDER A LEER.pdf
 
Power Point: El espiritismo desenmascarado
Power Point: El espiritismo desenmascaradoPower Point: El espiritismo desenmascarado
Power Point: El espiritismo desenmascarado
 
Evaluacion del tercer trimestre del 2023-2024
Evaluacion del tercer trimestre del 2023-2024Evaluacion del tercer trimestre del 2023-2024
Evaluacion del tercer trimestre del 2023-2024
 
Las Tecnologias Digitales en los Aprendizajesdel Siglo XXI UNESCO Ccesa007.pdf
Las Tecnologias Digitales en los Aprendizajesdel Siglo XXI  UNESCO Ccesa007.pdfLas Tecnologias Digitales en los Aprendizajesdel Siglo XXI  UNESCO Ccesa007.pdf
Las Tecnologias Digitales en los Aprendizajesdel Siglo XXI UNESCO Ccesa007.pdf
 
A VISITA DO SENHOR BISPO .
A VISITA DO SENHOR BISPO                .A VISITA DO SENHOR BISPO                .
A VISITA DO SENHOR BISPO .
 
Examen de la EvAU 2024 en Navarra Latín.
Examen de la EvAU 2024 en Navarra Latín.Examen de la EvAU 2024 en Navarra Latín.
Examen de la EvAU 2024 en Navarra Latín.
 
CORREOS SEGUNDO 2024 HONORIO DELGADO ESPINOZA
CORREOS SEGUNDO 2024 HONORIO DELGADO ESPINOZACORREOS SEGUNDO 2024 HONORIO DELGADO ESPINOZA
CORREOS SEGUNDO 2024 HONORIO DELGADO ESPINOZA
 

Unidad 6. colecciones

  • 1. C.F.P.E. JUAN XXIII – ALCORCÓN Departamento de Desarrollo de Aplicaciones Informáticas COLECCIONES 1. Definición y ventajas 2. Interfaces de Colección predefinidos • Collection • List • Set • Map 3. Clases colección predefinidas • Implementación de List: ArrayList, LinkedList • Implementación de Set: HashSet • Implementación de Map: HashMap • Clases de soporte a las colecciones: Collections, Arrays. 4. Colecciones personalizadas • AbstractList • AbstractSet 1
  • 2. C.F.P.E. JUAN XXIII – ALCORCÓN Departamento de Desarrollo de Aplicaciones Informáticas COLECCIONES. Concepto • Coleccion: objeto que agrupa múltiples elementos (objetos). • Utilidad: almacenar, recuperar, manipular conjuntos de datos. • Ejemplos reales de colecciones: asignaturas de un curso controles de una ventana Líneas de una factura Contactos de una agenda • Framework de colecciones: arquitectura unificada para representar y manipular colecciones: • Interfaces: especifican métodos para manipular colecciones, pero no su implementación. • Implementaciones: clases que implementan los interfaces de colección. • Algoritmos: – codificados en métodos. – Manipulan las estructuras de datos internas de las colecciones – Son algoritmos habituales en estructuras estáticas y dinámicas – ordenación, búsqueda binaria, inserción en listas, … • Ventaja: proporciona un métodos estándar de manipulación de grupos de objetos 2
  • 3. C.F.P.E. JUAN XXIII – ALCORCÓN Departamento de Desarrollo de Aplicaciones Informáticas COLECCIONES. Interfaces Jerarquía de interfaces – Collection : Raiz de la jerarquía de interfaces, no tiene implementaciones. – List: También llamadas secuencias. Colecciónes indexadas. Admiten duplicados. – Set: Representación matemática de conjunto. No indexada. No admite duplicados. – SortedSet : Conjuntos ordenados. – Queue: Representaciones de estructuras FIFO-LIFO. No admite nulos. – Map: Almacenamientos de parejas valor-clave. La clave equivale al índice. No admite clasves duplicadas. También se conocen como diccionarios. – SortedMap: Mapa ordenado según sus claves. Referencia completa: http://download.oracle.com/javase/6/docs/technotes/guides/collections/index.html 3
  • 4. C.F.P.E. JUAN XXIII – ALCORCÓN Departamento de Desarrollo de Aplicaciones Informáticas COLECCIONES. Interfaces Interface Collection – size() : número de elementos. – isEmpty () : ´devuelve true si la colección no tiene elementos – contains ( …) : true si existe un elemento e tal que (o==null) ? e==null : o.equals(e) – add (... ): añade el elemento a la colección. Devulve true si se agregó. – remove ( ... ) : elimina el objeto de la lista si existe. – iterator ( ) : devuelve un objeto que implementa Iterator. – //optional: lanzan “UnsupportedOperationException” si no estan implementados – //Bulk operations: métodos que “operan de colección a colección” en una sola llamada 4
  • 5. C.F.P.E. JUAN XXIII – ALCORCÓN Departamento de Desarrollo de Aplicaciones Informáticas COLECCIONES. Interfaces Interface List – get( … ) : devuelve el elemento en la posición index. 0 <= index < size() – set( … ) : coloca elemento en la posición index. 0 <= index < size() – add( … ): inserta al final – add (index, element): inserta en la posicion index desplazando si es necesario. 0 <= index <= size() – remove (index) : Devuelve y elimina de la lista elemento en la posicion index. 0 <= index < size() – addAll (index, Collection): añade la colección a la lista a partir de la posición expecificada. – int indexOf ( ): devuelve la posición del primer elemento igual o. – int indexOf ( ): devuelve la posición del último elemento igual o. – List< E > subList (from, to) : devuelve una sublista desde la posicion “from” hasta la posición “to” exclusive. 5
  • 6. C.F.P.E. JUAN XXIII – ALCORCÓN Departamento de Desarrollo de Aplicaciones Informáticas COLECCIONES. Interfaces Interface Set – Todos los métodos tienen el mismo comportamiento que el interface Collection, salvo: Los métodos add NO admiten insertar elementos DUPLICADOS . 6
  • 7. C.F.P.E. JUAN XXIII – ALCORCÓN Departamento de Desarrollo de Aplicaciones Informáticas COLECCIONES. Interfaces Interface Map – Mapa: es un objeto que almacena parejas key-value. – No contiene keys (claves) duplicadas – Cada clave debe tener al menos un valor. – Modela el concepto de “función matemática”. – K: Tipo de dato de la clave de cada elemento. – V: Tipo de dato del valor de cada elemento. 7
  • 8. C.F.P.E. JUAN XXIII – ALCORCÓN Departamento de Desarrollo de Aplicaciones Informáticas COLECCIONES. Interfaces Interface Map – V put(K key, V value): asocia value a key. Si ya existia Key sustituye value. Devuelve value antiguo. – V get(Object key): recupera el value asociado a key. – V remove(Object key): elimina el “mapeo” (clave-valor) asociado a la key. – boolean containsKey(Object key): devuelve true si el mapa contiene la clave – boolean containsValue(Object value); devuelve true si el mapa contiene el valor (equals). – int size(): devuelve el número de elementos contenidos en el mapa. – boolean isEmpty(): devuelve true si el mapa no contiene elementos. – // Bulk operations – void putAll(Map<? extends K, ? extends V> m): utiliza put para todos los mapeos del parametro. – void clear(): borra todos los elementos del mapa – // Collection Views – public Set<K> keySet(); devuelve un Set de “claves” (key). – public Collection<V> values(); devuelve una Colección de Values (valores). – public Set<Map.Entry<K,V>> entrySet(): devuelve un Set de objetos que implementan entradas (parejas clave-valor o Map.Entry) del mapa. – // Interface para entrySet – public interface Entry { – K getKey(); – V getValue(); – V setValue(V value); –} 8
  • 9. C.F.P.E. JUAN XXIII – ALCORCÓN Departamento de Desarrollo de Aplicaciones Informáticas COLECCIONES. Implementaciones. List • ArrayList: • Almacena internamente un vector dinámico. • Tiempo constante en acceso a los elementos. Se calcula la posición. • Borrados mas costosos. • Métodos específicos: • ArrayList (capacity): construye el array con una capacidad inicial • ArrayList(Collection): crea el array list desde una colección • ensureCapacity (capacity): incrementa la capacidad si es necesario hasta capacity. • trimToSize(). Reduce la capacidad hasta el número de elementos (size). • Vector: Implementación equivalente a ArrayList, pero sincronizada. • LinkedList: • Almacena los elementos en una lista enlazada • Tiempo variable en acceso a los elementos. Busqueda secuencia. • Tiempo constante en operaciones de inserción y borrado. • Implementa los interfaces List, Queue y Deque • Se puede emplear crear estructuras FIFO (Cola) y LIFO (Pila). 9
  • 10. C.F.P.E. JUAN XXIII – ALCORCÓN Departamento de Desarrollo de Aplicaciones Informáticas COLECCIONES. Implementaciones. Map • Map: • Implementa todos los métodos del Interface Map, incluso los opcionales. • Admite claves y valores nulos. • Internamente almacena los elementos en un array de objetos Map.Entry. • Proporciona tiempo de acceso constante con las funciones get, put utilizando para ello la función hash. • Capacity: Número de “huecos” para ubicar las Map.Entry. • Factor de carga: % de llenado del mapa antes que crezca su capacidad. Por defecto 75%. • Implementación no sincronizada. • Multimapa: Mapa cuyos values son colecciones. • TreeMap: Mapa que almacena sus elementos en una estructura Arbol. • LinkedHashMap: Mapa que almacena sus elementos en una lista enlazada. 10
  • 11. C.F.P.E. JUAN XXIII – ALCORCÓN Departamento de Desarrollo de Aplicaciones Informáticas COLECCIONES. Implementaciones. Set • HashSet: • Internamente envuelve un HasMap para evitar que los elementos se repitan • No garantiza el orden de los elementos. • Es una implementación no sincronizada • Métodos específicos: • HashSet ( ): Crea un Set vacío. • HahsSet (Collection ): Crea un HashSet a partir de una Collection. • HashSet (InitialCapacity): Crea un HashSet con una capacidad inicial. • TreeSet: Almacena un Set en un árbol. • LinkedHashSet: Almacena un Set en una lista enlazada. 11
  • 12. C.F.P.E. JUAN XXIII – ALCORCÓN Departamento de Desarrollo de Aplicaciones Informáticas COLECCIONES. Clase Collections • Collections: Clase que proporciona métodos para manipular colecciones. • Metodos más comunes • addAll : Añade a una colección una lista de elementos que se pasan por parámetro. • binarySearch: Realiza busqueda binaria. Permite pasar por parámetro un Comparator. • disjoint : devuelve true si dos colecciones (parametros) no tienen elementos en común. • fill: reemplaza todos los elementos de la colección por un objeto especificado (parámetro) • frecuency: devuelve el numero de repeticiones de un objeto dentro de una colección • list: devuelve un ArrayList con los elementos de la colección. • max: devuelve el mayor objeto de la colección. Se puede pasar un Comparador por parámetro. • min: devuelve el menor objeto de la colección. • newSetFromMap: Devuelve un set “envolviendo” el mapa enviado por parámetro. • replaceAll: reemplaza cada ocurrencia de una valor de la colección por un valor nuevo. • shuffle: permita aleatoriamente los elementos de una lista. • sort: ordena los elementos de la lista. Se puede pasar un comparador por parámetro. • swap: intercambia dos elementos de una lista. Se indican las posiciones por parámetro. 12
  • 13. C.F.P.E. JUAN XXIII – ALCORCÓN Departamento de Desarrollo de Aplicaciones Informáticas COLECCIONES. Colecciones personalizadas • Custom Collections: Son colecciones que implementan los interfaces del Framework de colecciones o heredan de clases colección abstractas. • Clases abstractas de colección: Incorporan implementaciones de los métodos de interfaces de colección pero no todos. Las clases personalizadas pueden reutilizar su implementación heredando de ellas. • AbstractCollection : Una colección que no es ni Set, ni List. Como mínimo proporcionar iterator y size(). • AbstractSet: Implementa un Set. Su uso es idéntico a AbstractCollection. • AbstractList: Una lista que envuelve un espacio de almacenamiento aleatorio (un array). • Acceso a los elementos: get (obligatorio). set, remove y add opcionales. • AbstractSequentialList : Una lista que envuelve un espacio de almacenamiento de acceso secuencial (lista enlazada). • Como mínimo proporcionar listIterator y el método size(). • AbstractQueue: Como mínimo debe proporcionar offer, peek, poll, y size( ) y un iterator que soporte remove. • AbstractMap: Como mínimo debe proporcionar la vista entrySet. Si es modificable proporcionar también put. 13
  • 14. C.F.P.E. JUAN XXIII – ALCORCÓN Departamento de Desarrollo de Aplicaciones Informáticas COLECCIONES. Colecciones personalizadas Clase personalizada heredando de AbstractList 14